Forward port r64930.

Fix one more case in cursor.c.
This commit is contained in:
Alexandre Vassalotti 2008-07-13 21:57:48 +00:00
parent dff1834f45
commit 1839bac796
2 changed files with 14 additions and 25 deletions

View file

@ -944,19 +944,16 @@ PyObject* pysqlite_connection_call(pysqlite_Connection* self, PyObject* args, Py
_pysqlite_seterror(self->db, NULL);
}
Py_DECREF(statement);
statement = 0;
Py_CLEAR(statement);
} else {
weakref = PyWeakref_NewRef((PyObject*)statement, NULL);
if (!weakref) {
Py_DECREF(statement);
statement = 0;
Py_CLEAR(statement);
goto error;
}
if (PyList_Append(self->statements, weakref) != 0) {
Py_DECREF(weakref);
statement = 0;
Py_CLEAR(weakref);
goto error;
}
@ -980,15 +977,13 @@ PyObject* pysqlite_connection_execute(pysqlite_Connection* self, PyObject* args,
method = PyObject_GetAttrString(cursor, "execute");
if (!method) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
goto error;
}
result = PyObject_CallObject(method, args);
if (!result) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
}
error:
@ -1011,15 +1006,13 @@ PyObject* pysqlite_connection_executemany(pysqlite_Connection* self, PyObject* a
method = PyObject_GetAttrString(cursor, "executemany");
if (!method) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
goto error;
}
result = PyObject_CallObject(method, args);
if (!result) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
}
error:
@ -1042,15 +1035,13 @@ PyObject* pysqlite_connection_executescript(pysqlite_Connection* self, PyObject*
method = PyObject_GetAttrString(cursor, "executescript");
if (!method) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
goto error;
}
result = PyObject_CallObject(method, args);
if (!result) {
Py_DECREF(cursor);
cursor = 0;
Py_CLEAR(cursor);
}
error: