diff options
Diffstat (limited to 'Modules/_sqlite/util.c')
-rw-r--r-- | Modules/_sqlite/util.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/Modules/_sqlite/util.c b/Modules/_sqlite/util.c index cfd189d..113b581 100644 --- a/Modules/_sqlite/util.c +++ b/Modules/_sqlite/util.c @@ -72,6 +72,8 @@ get_exception_class(pysqlite_state *state, int errorcode) return state->IntegrityError; case SQLITE_MISUSE: return state->ProgrammingError; + case SQLITE_RANGE: + return state->InterfaceError; default: return state->DatabaseError; } @@ -139,9 +141,10 @@ _pysqlite_seterror(pysqlite_state *state, sqlite3 *db) } /* Create and set the exception. */ + int extended_errcode = sqlite3_extended_errcode(db); const char *errmsg = sqlite3_errmsg(db); - raise_exception(exc_class, errorcode, errmsg); - return errorcode; + raise_exception(exc_class, extended_errcode, errmsg); + return extended_errcode; } #ifdef WORDS_BIGENDIAN |