diff --git a/Modules/unicodedata.c b/Modules/unicodedata.c index 4711123eb2e..36c96e4a633 100644 --- a/Modules/unicodedata.c +++ b/Modules/unicodedata.c @@ -227,7 +227,7 @@ unicodedata_decomposition(PyObject *self, PyObject *args) (code&((1<> 8; @@ -241,7 +241,9 @@ unicodedata_decomposition(PyObject *self, PyObject *args) while (count-- > 0) { if (i) decomp[i++] = ' '; - sprintf(decomp + i, "%04X", decomp_data[++index]); + assert((size_t)i < sizeof(decomp)); + PyOS_snprintf(decomp + i, sizeof(decomp) - i, "%04X", + decomp_data[++index]); i += strlen(decomp + i); }