]> granicus.if.org Git - python/commitdiff
#1316: remove redundant PyLong_Check calls when PyInt_Check was already called.
authorGeorg Brandl <georg@python.org>
Tue, 23 Oct 2007 19:24:22 +0000 (19:24 +0000)
committerGeorg Brandl <georg@python.org>
Tue, 23 Oct 2007 19:24:22 +0000 (19:24 +0000)
Modules/_ctypes/_ctypes.c
Modules/_ctypes/cfield.c
Modules/_sqlite/row.c
Modules/_sqlite/statement.c
Modules/cjkcodecs/multibytecodec.c
Objects/sliceobject.c
Python/getargs.c

index 22f2cb3148881b360ccbe9731d204b9f6db8593a..cca570ae2bf6f28403c1ab43b68086a2a11193b9 100644 (file)
@@ -236,7 +236,7 @@ static PyObject *
 CDataType_from_address(PyObject *type, PyObject *value)
 {
        void *buf;
-       if (!PyInt_Check(value) && !PyLong_Check(value)) {
+       if (!PyInt_Check(value)) {
                PyErr_SetString(PyExc_TypeError,
                                "integer expected");
                return NULL;
@@ -265,7 +265,7 @@ CDataType_in_dll(PyObject *type, PyObject *args)
        obj = PyObject_GetAttrString(dll, "_handle");
        if (!obj)
                return NULL;
-       if (!PyInt_Check(obj) && !PyLong_Check(obj)) {
+       if (!PyInt_Check(obj)) {
                PyErr_SetString(PyExc_TypeError,
                                "the _handle attribute of the second argument must be an integer");
                Py_DECREF(obj);
@@ -1233,7 +1233,7 @@ c_void_p_from_param(PyObject *type, PyObject *value)
        }
        /* Should probably allow buffer interface as well */
 /* int, long */
-       if (PyInt_Check(value) || PyLong_Check(value)) {
+       if (PyInt_Check(value)) {
                PyCArgObject *parg;
                struct fielddesc *fd = getentry("P");
 
@@ -2697,7 +2697,7 @@ static int
 _get_name(PyObject *obj, char **pname)
 {
 #ifdef MS_WIN32
-       if (PyInt_Check(obj) || PyLong_Check(obj)) {
+       if (PyInt_Check(obj)) {
                /* We have to use MAKEINTRESOURCEA for Windows CE.
                   Works on Windows as well, of course.
                */
@@ -2734,7 +2734,7 @@ CFuncPtr_FromDll(PyTypeObject *type, PyObject *args, PyObject *kwds)
        obj = PyObject_GetAttrString(dll, "_handle");
        if (!obj)
                return NULL;
-       if (!PyInt_Check(obj) && !PyLong_Check(obj)) {
+       if (!PyInt_Check(obj)) {
                PyErr_SetString(PyExc_TypeError,
                                "the _handle attribute of the second argument must be an integer");
                Py_DECREF(obj);
@@ -2859,8 +2859,7 @@ CFuncPtr_new(PyTypeObject *type, PyObject *args, PyObject *kwds)
 #endif
 
        if (1 == PyTuple_GET_SIZE(args)
-           && (PyInt_Check(PyTuple_GET_ITEM(args, 0))
-               || PyLong_Check(PyTuple_GET_ITEM(args, 0)))) {
+           && (PyInt_Check(PyTuple_GET_ITEM(args, 0)))) {
                CDataObject *ob;
                void *ptr = PyLong_AsVoidPtr(PyTuple_GET_ITEM(args, 0));
                if (ptr == NULL)
index c36798a74ba0cfc9d5d18a31eefa524d539f9769..534bb1e81d526fc929b5062ab93878935ab3ab92 100644 (file)
@@ -329,7 +329,7 @@ static int
 get_long(PyObject *v, long *p)
 {
        long x;
-       if (!PyInt_Check(v) && !PyLong_Check(v)) {
+       if (!PyInt_Check(v)) {
                PyErr_Format(PyExc_TypeError,
                             "int expected instead of %s instance",
                             v->ob_type->tp_name);
@@ -348,7 +348,7 @@ static int
 get_ulong(PyObject *v, unsigned long *p)
 {
        unsigned long x;
-       if (!PyInt_Check(v) && !PyLong_Check(v)) {
+       if (!PyInt_Check(v)) {
                PyErr_Format(PyExc_TypeError,
                             "int expected instead of %s instance",
                             v->ob_type->tp_name);
@@ -369,7 +369,7 @@ static int
 get_longlong(PyObject *v, PY_LONG_LONG *p)
 {
        PY_LONG_LONG x;
-       if (!PyInt_Check(v) && !PyLong_Check(v)) {
+       if (!PyInt_Check(v)) {
                PyErr_Format(PyExc_TypeError,
                             "int expected instead of %s instance",
                             v->ob_type->tp_name);
@@ -388,7 +388,7 @@ static int
 get_ulonglong(PyObject *v, unsigned PY_LONG_LONG *p)
 {
        unsigned PY_LONG_LONG x;
-       if (!PyInt_Check(v) && !PyLong_Check(v)) {
+       if (!PyInt_Check(v)) {
                PyErr_Format(PyExc_TypeError,
                             "int expected instead of %s instance",
                             v->ob_type->tp_name);
@@ -1373,7 +1373,7 @@ z_set(void *ptr, PyObject *value, Py_ssize_t size)
                assert(PyBytes_Check(str));
                *(char **)ptr = PyBytes_AS_STRING(str);
                return str;
-       } else if (PyInt_Check(value) || PyLong_Check(value)) {
+       } else if (PyInt_Check(value)) {
 #if SIZEOF_VOID_P == SIZEOF_LONG_LONG
                *(char **)ptr = (char *)PyInt_AsUnsignedLongLongMask(value);
 #else
index b2f105a9c48c301a88281eaeeb4acb30adef584d..2f3ba69f10577a79c74d9da3023cbcf518d4b590 100644 (file)
@@ -76,12 +76,7 @@ PyObject* pysqlite_row_subscript(pysqlite_Row* self, PyObject* idx)
 
     PyObject* item;
 
-    if (PyInt_Check(idx)) {
-        _idx = PyInt_AsLong(idx);
-        item = PyTuple_GetItem(self->data, _idx);
-        Py_XINCREF(item);
-        return item;
-    } else if (PyLong_Check(idx)) {
+    if (PyLong_Check(idx)) {
         _idx = PyLong_AsLong(idx);
         item = PyTuple_GetItem(self->data, _idx);
         Py_XINCREF(item);
index 9080c9b484cdaed47435f3b36de55f554c5cb54d..1cc3cddd40fc4ffdef321530dd24b0fb195302e5 100644 (file)
@@ -80,9 +80,10 @@ int pysqlite_statement_create(pysqlite_Statement* self, pysqlite_Connection* con
 int pysqlite_statement_bind_parameter(pysqlite_Statement* self, int pos, PyObject* parameter)
 {
     int rc = SQLITE_OK;
-    long longval;
 #ifdef HAVE_LONG_LONG
     PY_LONG_LONG longlongval;
+#else
+    long longval;
 #endif
     const char* buffer;
     char* string;
@@ -91,14 +92,16 @@ int pysqlite_statement_bind_parameter(pysqlite_Statement* self, int pos, PyObjec
 
     if (parameter == Py_None) {
         rc = sqlite3_bind_null(self->st, pos);
-    } else if (PyInt_CheckExact(parameter)) {
-        longval = PyInt_AsLong(parameter);
-        rc = sqlite3_bind_int64(self->st, pos, (sqlite_int64)longval);
 #ifdef HAVE_LONG_LONG
     } else if (PyLong_Check(parameter)) {
         longlongval = PyLong_AsLongLong(parameter);
         /* in the overflow error case, longlongval is -1, and an exception is set */
         rc = sqlite3_bind_int64(self->st, pos, (sqlite_int64)longlongval);
+#else
+    } else if (PyLong_Check(parameter)) {
+        longval = PyLong_AsLong(parameter);
+        /* in the overflow error case, longval is -1, and an exception is set */
+        rc = sqlite3_bind_int64(self->st, pos, (sqlite_int64)longval);
 #endif
     } else if (PyFloat_Check(parameter)) {
         rc = sqlite3_bind_double(self->st, pos, PyFloat_AsDouble(parameter));
index 4778efb33229b5a5cfd7baf9234cdd0727c75cd5..7ab31459989462f78878b8e779ed8945de79c40e 100644 (file)
@@ -313,8 +313,7 @@ multibytecodec_encerror(MultibyteCodec *codec,
 
        if (!PyTuple_Check(retobj) || PyTuple_GET_SIZE(retobj) != 2 ||
            !PyUnicode_Check((tobj = PyTuple_GET_ITEM(retobj, 0))) ||
-           !(PyInt_Check(PyTuple_GET_ITEM(retobj, 1)) ||
-             PyLong_Check(PyTuple_GET_ITEM(retobj, 1)))) {
+           !PyInt_Check(PyTuple_GET_ITEM(retobj, 1))) {
                PyErr_SetString(PyExc_TypeError,
                                "encoding error handler must return "
                                "(unicode, int) tuple");
@@ -433,8 +432,7 @@ multibytecodec_decerror(MultibyteCodec *codec,
 
        if (!PyTuple_Check(retobj) || PyTuple_GET_SIZE(retobj) != 2 ||
            !PyUnicode_Check((retuni = PyTuple_GET_ITEM(retobj, 0))) ||
-           !(PyInt_Check(PyTuple_GET_ITEM(retobj, 1)) ||
-             PyLong_Check(PyTuple_GET_ITEM(retobj, 1)))) {
+           !PyInt_Check(PyTuple_GET_ITEM(retobj, 1))) {
                PyErr_SetString(PyExc_TypeError,
                                "decoding error handler must return "
                                "(unicode, int) tuple");
index d160b07e4ea0a929e2f92c028b1ca1c906da3336..28b92d05f8a9826e0cb27ccada4e5e5a44393b5d 100644 (file)
@@ -112,14 +112,14 @@ PySlice_GetIndices(PySliceObject *r, Py_ssize_t length,
        if (r->start == Py_None) {
                *start = *step < 0 ? length-1 : 0;
        } else {
-               if (!PyInt_Check(r->start) && !PyLong_Check(r->step)) return -1;
+               if (!PyInt_Check(r->start)) return -1;
                *start = PyInt_AsSsize_t(r->start);
                if (*start < 0) *start += length;
        }
        if (r->stop == Py_None) {
                *stop = *step < 0 ? -1 : length;
        } else {
-               if (!PyInt_Check(r->stop) && !PyLong_Check(r->step)) return -1;
+               if (!PyInt_Check(r->stop)) return -1;
                *stop = PyInt_AsSsize_t(r->stop);
                if (*stop < 0) *stop += length;
        }
index 4bcc1757b65ceeb3017855d1ede01a38822fda76..0b25d4b3783d5d300e72bfcab6764c2fc0b24e64 100644 (file)
@@ -696,9 +696,7 @@ convertsimple(PyObject *arg, const char **p_format, va_list *p_va, int flags,
        case 'k': { /* long sized bitfield */
                unsigned long *p = va_arg(*p_va, unsigned long *);
                unsigned long ival;
-               if (PyInt_Check(arg))
-                       ival = PyInt_AsUnsignedLongMask(arg);
-               else if (PyLong_Check(arg))
+               if (PyLong_Check(arg))
                        ival = PyLong_AsUnsignedLongMask(arg);
                else
                        return converterr("integer<k>", arg, msgbuf, bufsize);