Title: [932] trunk/pgmodule.c: Alternative workaround for Python 3.7 issue
- Revision
- 932
- Author
- cito
- Date
- 2018-04-22 12:26:15 -0400 (Sun, 22 Apr 2018)
Log Message
Alternative workaround for Python 3.7 issue
Modified Paths
Diff
Modified: trunk/pgmodule.c (931 => 932)
--- trunk/pgmodule.c 2018-04-22 13:43:01 UTC (rev 931)
+++ trunk/pgmodule.c 2018-04-22 16:26:15 UTC (rev 932)
@@ -2224,14 +2224,14 @@
{
/* prepare arguments */
PyObject **str, **s;
- char **parms, **p;
+ const char **parms, **p;
register int i;
str = (PyObject **)PyMem_Malloc(nparms * sizeof(*str));
- parms = (char **)PyMem_Malloc(nparms * sizeof(*parms));
+ parms = (const char **)PyMem_Malloc(nparms * sizeof(*parms));
if (!str || !parms)
{
- PyMem_Free(parms); PyMem_Free(str);
+ PyMem_Free((void *)parms); PyMem_Free(str);
Py_XDECREF(query_obj); Py_XDECREF(param_obj);
return PyErr_NoMemory();
}
@@ -2256,7 +2256,7 @@
PyObject *str_obj = get_encoded_string(obj, encoding);
if (!str_obj)
{
- PyMem_Free(parms);
+ PyMem_Free((void *)parms);
while (s != str) { s--; Py_DECREF(*s); }
PyMem_Free(str);
Py_XDECREF(query_obj);
@@ -2272,7 +2272,7 @@
PyObject *str_obj = PyObject_Str(obj);
if (!str_obj)
{
- PyMem_Free(parms);
+ PyMem_Free((void *)parms);
while (s != str) { s--; Py_DECREF(*s); }
PyMem_Free(str);
Py_XDECREF(query_obj);
@@ -2282,16 +2282,16 @@
return NULL;
}
*s++ = str_obj;
- *p = (char *)PyStr_AsString(str_obj);
+ *p = PyStr_AsString(str_obj);
}
}
Py_BEGIN_ALLOW_THREADS
result = PQexecParams(self->cnx, query, nparms,
- NULL, (const char * const *)parms, NULL, NULL, 0);
+ NULL, parms, NULL, NULL, 0);
Py_END_ALLOW_THREADS
- PyMem_Free(parms);
+ PyMem_Free((void *)parms);
while (s != str) { s--; Py_DECREF(*s); }
PyMem_Free(str);
}
_______________________________________________
PyGreSQL mailing list
[email protected]
https://mail.vex.net/mailman/listinfo.cgi/pygresql