Skip to content

Commit 97e53c4

Browse files
committed
Switch overlapped_WSAConnect() and Overlapped_WSASendTo() to METH_FASTCALL
1 parent 561bd00 commit 97e53c4

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

Modules/overlapped.c

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1543,7 +1543,7 @@ PyDoc_STRVAR(
15431543
* _only_ be used for connectionless sockets (UDP).
15441544
*/
15451545
static PyObject *
1546-
overlapped_WSAConnect(PyObject *self, PyObject *args)
1546+
overlapped_WSAConnect(PyObject *self, PyObject *args, Py_ssize_t nargs)
15471547
{
15481548
SOCKET ConnectSocket;
15491549
PyObject *AddressObj;
@@ -1552,7 +1552,9 @@ overlapped_WSAConnect(PyObject *self, PyObject *args)
15521552
int Length;
15531553
int err;
15541554

1555-
if (!PyArg_ParseTuple(args, F_HANDLE "O", &ConnectSocket, &AddressObj)) {
1555+
1556+
if (!_PyArg_ParseStack(args, nargs, F_HANDLE "O!:WSAConnect",
1557+
&ConnectSocket, &PyTuple_Type, &AddressObj)) {
15561558
return NULL;
15571559
}
15581560

@@ -1584,7 +1586,7 @@ PyDoc_STRVAR(
15841586
"Start overlapped sendto over a connectionless (UDP) socket");
15851587

15861588
static PyObject *
1587-
Overlapped_WSASendTo(OverlappedObject *self, PyObject *args)
1589+
Overlapped_WSASendTo(OverlappedObject *self, PyObject *args, Py_ssize_t nargs)
15881590
{
15891591
HANDLE handle;
15901592
PyObject *bufobj;
@@ -1598,8 +1600,8 @@ Overlapped_WSASendTo(OverlappedObject *self, PyObject *args)
15981600
int ret;
15991601
DWORD err;
16001602

1601-
if (!PyArg_ParseTuple(args, F_HANDLE "O" F_DWORD "O",
1602-
&handle, &bufobj, &flags, &AddressObj))
1603+
if (!_PyArg_ParseStack(args, nargs, F_HANDLE "OkO!:WSASendTo",
1604+
&handle, &bufobj, &flags, &PyTuple_Type, &AddressObj))
16031605
{
16041606
return NULL;
16051607
}
@@ -1752,7 +1754,7 @@ static PyMethodDef Overlapped_methods[] = {
17521754
{"WSARecvFrom", (PyCFunction) Overlapped_WSARecvFrom,
17531755
METH_VARARGS, Overlapped_WSARecvFrom_doc },
17541756
{"WSASendTo", (PyCFunction) Overlapped_WSASendTo,
1755-
METH_VARARGS, Overlapped_WSASendTo_doc },
1757+
METH_FASTCALL, Overlapped_WSASendTo_doc },
17561758
{NULL}
17571759
};
17581760

@@ -1841,7 +1843,7 @@ static PyMethodDef overlapped_functions[] = {
18411843
{"ConnectPipe", overlapped_ConnectPipe,
18421844
METH_VARARGS, ConnectPipe_doc},
18431845
{"WSAConnect", overlapped_WSAConnect,
1844-
METH_VARARGS, WSAConnect_doc},
1846+
METH_FASTCALL, WSAConnect_doc},
18451847
{NULL}
18461848
};
18471849

0 commit comments

Comments
 (0)