summaryrefslogtreecommitdiff
path: root/Modules/_sqlite/connection.c
diff options
context:
space:
mode:
authorVictor Stinner <victor.stinner@gmail.com>2013-12-19 16:38:03 +0100
committerVictor Stinner <victor.stinner@gmail.com>2013-12-19 16:38:03 +0100
commit3b16affba365ffb2538065cca104597cb151a093 (patch)
tree94c8c1d62acdf3ce3839a71b908a935585495d32 /Modules/_sqlite/connection.c
parent65ab1a2a0f28cdc19d18a84dcccbe18fdf15d858 (diff)
downloadcpython-3b16affba365ffb2538065cca104597cb151a093.tar.gz
Issue #20026: Fix the sqlite module to handle correctly invalid isolation level
(wrong type).
Diffstat (limited to 'Modules/_sqlite/connection.c')
-rw-r--r--Modules/_sqlite/connection.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/Modules/_sqlite/connection.c b/Modules/_sqlite/connection.c
index 451ea241bd..8cf2d6aa80 100644
--- a/Modules/_sqlite/connection.c
+++ b/Modules/_sqlite/connection.c
@@ -109,7 +109,10 @@ int pysqlite_connection_init(pysqlite_Connection* self, PyObject* args, PyObject
Py_INCREF(isolation_level);
}
self->isolation_level = NULL;
- pysqlite_connection_set_isolation_level(self, isolation_level);
+ if (pysqlite_connection_set_isolation_level(self, isolation_level) < 0) {
+ Py_DECREF(isolation_level);
+ return -1;
+ }
Py_DECREF(isolation_level);
self->statement_cache = (pysqlite_Cache*)PyObject_CallFunction((PyObject*)&pysqlite_CacheType, "Oi", self, cached_statements);