static PyObject * |
_mysql_escape_string( |
_mysql_ConnectionObject *self, |
PyObject *args) |
{ |
PyObject *str; |
char *in, *out; |
int len, size; |
if (!PyArg_ParseTuple(args, "s#:escape_string", &in, &size)) return NULL; |
str = PyUnicode_FromStringAndSize((char *) NULL, size*2+1); |
if (!str) return PyErr_NoMemory(); |
out = get_string(str); |
if (!out) return NULL; |
#if MYSQL_VERSION_ID < 32321 |
// TODO: we don't support mysql 3.1... |
len = mysql_escape_string(out, in, size); |
#else |
len = mysql_real_escape_string(utf8conn, out, in, size); |
#endif |
if (PyUnicode_Resize(&str, len) < 0) return NULL; |
return (str); |
} |
was expecting final owned ob_refcnt of '*str.44' to be 0 since nothing references it but final ob_refcnt is refs: 1 owned
found 2 similar trace(s) to this
when PyArg_ParseTuple() succeeds
taking False path
when PyUnicodeUCS4_FromStringAndSize() succeeds
'*str.44' was allocated at: str = PyUnicode_FromStringAndSize((char *) NULL, size*2+1);
taking False path
when treating unknown char * from _mysql.c:1083 as non-NULL
taking False path
when considering range: -0x80000000 <= value <= -1
taking True path
static PyObject * |
_mysql_escape_string( |
_mysql_ConnectionObject *self, |
PyObject *args) |
{ |
PyObject *str; |
char *in, *out; |
int len, size; |
if (!PyArg_ParseTuple(args, "s#:escape_string", &in, &size)) return NULL; |
str = PyUnicode_FromStringAndSize((char *) NULL, size*2+1); |
if (!str) return PyErr_NoMemory(); |
out = get_string(str); |
if (!out) return NULL; |
#if MYSQL_VERSION_ID < 32321 |
// TODO: we don't support mysql 3.1... |
len = mysql_escape_string(out, in, size); |
#else |
len = mysql_real_escape_string(utf8conn, out, in, size); |
#endif |
if (PyUnicode_Resize(&str, len) < 0) return NULL; |
return (str); |
} |
found 1 similar trace(s) to this
when PyArg_ParseTuple() succeeds
taking False path
when PyUnicodeUCS4_FromStringAndSize() succeeds
taking False path
when treating unknown char * from _mysql.c:1083 as non-NULL
taking False path
when considering range: -0x80000000 <= value <= -1
taking True path