[3.9] bpo-45581: Raise MemoryError in sqlite3.connect if SQLite signals memory error (GH-29171) (GH-29324)

(cherry picked from commit e2e62b3808)

Co-authored-by: Erlend Egeberg Aasland <erlend.aasland@innova.no>
This commit is contained in:
Łukasz Langa 2021-10-29 23:02:19 +02:00 committed by GitHub
parent 3ec1124de2
commit ed807bf333
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 0 deletions

View file

@ -0,0 +1,2 @@
:meth:`sqlite3.connect` now correctly raises :exc:`MemoryError` if the
underlying SQLite API signals memory error. Patch by Erlend E. Aasland.

View file

@ -134,6 +134,10 @@ int pysqlite_connection_init(pysqlite_Connection* self, PyObject* args, PyObject
Py_DECREF(database_obj);
if (self->db == NULL && rc == SQLITE_NOMEM) {
PyErr_NoMemory();
return -1;
}
if (rc != SQLITE_OK) {
_pysqlite_seterror(self->db, NULL);
return -1;