diff --git a/Misc/NEWS b/Misc/NEWS index aa023884d85..c4f0eeefe62 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -708,6 +708,9 @@ Library Extension Modules ----------------- +- Bug #1649098: Avoid declaration of zero-sized array declaration in + structure. + - Removed the rgbimg module; been deprecated since Python 2.5. - Bug #1721309: prevent bsddb module from freeing random memory. diff --git a/Modules/_ctypes/callbacks.c b/Modules/_ctypes/callbacks.c index c57dc07be2f..18af288ce26 100644 --- a/Modules/_ctypes/callbacks.c +++ b/Modules/_ctypes/callbacks.c @@ -268,7 +268,7 @@ ffi_info *AllocFunctionCallback(PyObject *callable, ffi_abi cc; nArgs = PySequence_Size(converters); - p = (ffi_info *)PyMem_Malloc(sizeof(ffi_info) + sizeof(ffi_type) * (nArgs + 1)); + p = (ffi_info *)PyMem_Malloc(sizeof(ffi_info) + sizeof(ffi_type) * (nArgs)); if (p == NULL) { PyErr_NoMemory(); return NULL; diff --git a/Modules/_ctypes/ctypes.h b/Modules/_ctypes/ctypes.h index 5846e3fc594..bf2bdaa6ffc 100644 --- a/Modules/_ctypes/ctypes.h +++ b/Modules/_ctypes/ctypes.h @@ -75,7 +75,7 @@ typedef struct { PyObject *callable; SETFUNC setfunc; ffi_type *restype; - ffi_type *atypes[0]; + ffi_type *atypes[1]; } ffi_info; typedef struct {