]> granicus.if.org Git - python/commitdiff
Replace _pysqlite_long_from_int64() with PyLong_FromLongLong() (GH-16882)
authorSergey Fedoseev <fedoseev.sergey@gmail.com>
Wed, 23 Oct 2019 08:09:01 +0000 (13:09 +0500)
committerSerhiy Storchaka <storchaka@gmail.com>
Wed, 23 Oct 2019 08:09:01 +0000 (11:09 +0300)
Modules/_sqlite/connection.c
Modules/_sqlite/cursor.c
Modules/_sqlite/util.c
Modules/_sqlite/util.h

index ae03aed8f0b885b0151645d2a34c2221e9ea3c3b..64051669185ba617e903f0d649a90c8e6498cfb1 100644 (file)
@@ -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));
index 6d9685b29642554be717db8e521db5896d45b8c6..45f5865590d692290e63817d31af6e0f822474da 100644 (file)
@@ -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) {
index 3fa671d052b0d83c28cdbb6491e5f60300da11d9..1dbabcdd94a811fe6beef0653a146009dff4a518 100644 (file)
@@ -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)
 {
index 626191118f9257c0734c9dfd76c520e38fd4a2ed..c5a220e9b0aa7206e4c91a1f15b2a6eafb6260ea 100644 (file)
@@ -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