diff options
author | Sergey Fedoseev <fedoseev.sergey@gmail.com> | 2019-10-23 08:09:01 (GMT) |
---|---|---|
committer | Serhiy Storchaka <storchaka@gmail.com> | 2019-10-23 08:09:01 (GMT) |
commit | b6f5b9dd21a37fa97af38521941025259f1556e0 (patch) | |
tree | 5759dca4eca74ae52cd054215a3e19640ed1dbe3 | |
parent | ea6041cd7ff0d752296d1759927eff898ceba864 (diff) | |
download | cpython-b6f5b9dd21a37fa97af38521941025259f1556e0.zip cpython-b6f5b9dd21a37fa97af38521941025259f1556e0.tar.gz cpython-b6f5b9dd21a37fa97af38521941025259f1556e0.tar.bz2 |
Replace _pysqlite_long_from_int64() with PyLong_FromLongLong() (GH-16882)
-rw-r--r-- | Modules/_sqlite/connection.c | 2 | ||||
-rw-r--r-- | Modules/_sqlite/cursor.c | 4 | ||||
-rw-r--r-- | Modules/_sqlite/util.c | 16 | ||||
-rw-r--r-- | Modules/_sqlite/util.h | 1 |
4 files changed, 3 insertions, 20 deletions
diff --git a/Modules/_sqlite/connection.c b/Modules/_sqlite/connection.c index ae03aed..6405166 100644 --- a/Modules/_sqlite/connection.c +++ b/Modules/_sqlite/connection.c @@ -550,7 +550,7 @@ PyObject* _pysqlite_build_py_params(sqlite3_context *context, int argc, sqlite3_ cur_value = argv[i]; switch (sqlite3_value_type(argv[i])) { case SQLITE_INTEGER: - cur_py_value = _pysqlite_long_from_int64(sqlite3_value_int64(cur_value)); + cur_py_value = PyLong_FromLongLong(sqlite3_value_int64(cur_value)); break; case SQLITE_FLOAT: cur_py_value = PyFloat_FromDouble(sqlite3_value_double(cur_value)); diff --git a/Modules/_sqlite/cursor.c b/Modules/_sqlite/cursor.c index 6d9685b..45f5865 100644 --- a/Modules/_sqlite/cursor.c +++ b/Modules/_sqlite/cursor.c @@ -277,7 +277,7 @@ _pysqlite_fetch_one_row(pysqlite_Cursor* self) Py_INCREF(Py_None); converted = Py_None; } else if (coltype == SQLITE_INTEGER) { - converted = _pysqlite_long_from_int64(sqlite3_column_int64(self->statement->st, i)); + converted = PyLong_FromLongLong(sqlite3_column_int64(self->statement->st, i)); } else if (coltype == SQLITE_FLOAT) { converted = PyFloat_FromDouble(sqlite3_column_double(self->statement->st, i)); } else if (coltype == SQLITE_TEXT) { @@ -558,7 +558,7 @@ _pysqlite_query_execute(pysqlite_Cursor* self, int multiple, PyObject* args) Py_BEGIN_ALLOW_THREADS lastrowid = sqlite3_last_insert_rowid(self->connection->db); Py_END_ALLOW_THREADS - self->lastrowid = _pysqlite_long_from_int64(lastrowid); + self->lastrowid = PyLong_FromLongLong(lastrowid); } if (rc == SQLITE_ROW) { diff --git a/Modules/_sqlite/util.c b/Modules/_sqlite/util.c index 3fa671d..1dbabcd 100644 --- a/Modules/_sqlite/util.c +++ b/Modules/_sqlite/util.c @@ -103,22 +103,6 @@ int _pysqlite_seterror(sqlite3* db, sqlite3_stmt* st) # define IS_LITTLE_ENDIAN 1 #endif -PyObject * -_pysqlite_long_from_int64(sqlite_int64 value) -{ -# if SIZEOF_LONG_LONG < 8 - if (value > PY_LLONG_MAX || value < PY_LLONG_MIN) { - return _PyLong_FromByteArray(&value, sizeof(value), - IS_LITTLE_ENDIAN, 1 /* signed */); - } -# endif -# if SIZEOF_LONG < SIZEOF_LONG_LONG - if (value > LONG_MAX || value < LONG_MIN) - return PyLong_FromLongLong(value); -# endif - return PyLong_FromLong(Py_SAFE_DOWNCAST(value, sqlite_int64, long)); -} - sqlite_int64 _pysqlite_long_as_int64(PyObject * py_val) { diff --git a/Modules/_sqlite/util.h b/Modules/_sqlite/util.h index 6261911..c5a220e 100644 --- a/Modules/_sqlite/util.h +++ b/Modules/_sqlite/util.h @@ -37,7 +37,6 @@ int pysqlite_step(sqlite3_stmt* statement, pysqlite_Connection* connection); */ int _pysqlite_seterror(sqlite3* db, sqlite3_stmt* st); -PyObject * _pysqlite_long_from_int64(sqlite_int64 value); sqlite_int64 _pysqlite_long_as_int64(PyObject * value); #if SQLITE_VERSION_NUMBER >= 3007014 |