summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSergey Fedoseev <fedoseev.sergey@gmail.com>2019-10-23 08:09:01 (GMT)
committerSerhiy Storchaka <storchaka@gmail.com>2019-10-23 08:09:01 (GMT)
commitb6f5b9dd21a37fa97af38521941025259f1556e0 (patch)
tree5759dca4eca74ae52cd054215a3e19640ed1dbe3
parentea6041cd7ff0d752296d1759927eff898ceba864 (diff)
downloadcpython-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.c2
-rw-r--r--Modules/_sqlite/cursor.c4
-rw-r--r--Modules/_sqlite/util.c16
-rw-r--r--Modules/_sqlite/util.h1
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