From 19481ec86e86c2dfe0dc985183e1bc213280f00e Mon Sep 17 00:00:00 2001 From: Alexander Buchkovsky Date: Sat, 1 Sep 2018 19:50:51 +0300 Subject: [PATCH] Fix for invalid assert on big output of multiprocessing.Process --- Modules/_winapi.c | 6 +++--- Modules/clinic/_winapi.c.h | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Modules/_winapi.c b/Modules/_winapi.c index 30f269fbdccdad..686e21f84ac89b 100644 --- a/Modules/_winapi.c +++ b/Modules/_winapi.c @@ -1338,7 +1338,7 @@ _winapi_PeekNamedPipe_impl(PyObject *module, HANDLE handle, int size) } if (_PyBytes_Resize(&buf, nread)) return NULL; - return Py_BuildValue("Nii", buf, navail, nleft); + return Py_BuildValue("NII", buf, navail, nleft); } else { Py_BEGIN_ALLOW_THREADS @@ -1347,7 +1347,7 @@ _winapi_PeekNamedPipe_impl(PyObject *module, HANDLE handle, int size) if (!ret) { return PyErr_SetExcFromWindowsErr(PyExc_OSError, 0); } - return Py_BuildValue("ii", navail, nleft); + return Py_BuildValue("II", navail, nleft); } } @@ -1360,7 +1360,7 @@ _winapi.ReadFile [clinic start generated code]*/ static PyObject * -_winapi_ReadFile_impl(PyObject *module, HANDLE handle, int size, +_winapi_ReadFile_impl(PyObject *module, HANDLE handle, DWORD size, int use_overlapped) /*[clinic end generated code: output=492029ca98161d84 input=3f0fde92f74de59a]*/ { diff --git a/Modules/clinic/_winapi.c.h b/Modules/clinic/_winapi.c.h index b14f087732ef43..fe8c59ca3b4c7e 100644 --- a/Modules/clinic/_winapi.c.h +++ b/Modules/clinic/_winapi.c.h @@ -673,7 +673,7 @@ PyDoc_STRVAR(_winapi_ReadFile__doc__, {"ReadFile", (PyCFunction)_winapi_ReadFile, METH_FASTCALL|METH_KEYWORDS, _winapi_ReadFile__doc__}, static PyObject * -_winapi_ReadFile_impl(PyObject *module, HANDLE handle, int size, +_winapi_ReadFile_impl(PyObject *module, HANDLE handle, DWORD size, int use_overlapped); static PyObject * @@ -681,7 +681,7 @@ _winapi_ReadFile(PyObject *module, PyObject *const *args, Py_ssize_t nargs, PyOb { PyObject *return_value = NULL; static const char * const _keywords[] = {"handle", "size", "overlapped", NULL}; - static _PyArg_Parser _parser = {"" F_HANDLE "i|i:ReadFile", _keywords, 0}; + static _PyArg_Parser _parser = {"" F_HANDLE "I|I:ReadFile", _keywords, 0}; HANDLE handle; int size; int use_overlapped = 0;