]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Patch #102955, fixing one of the warnings in bug #121479:
authorAndrew M. Kuchling <amk@amk.ca>
Wed, 20 Dec 2000 14:36:56 +0000 (14:36 +0000)
committerAndrew M. Kuchling <amk@amk.ca>
Wed, 20 Dec 2000 14:36:56 +0000 (14:36 +0000)
Simplifies ord()'s logic at the cost of some code duplication, removing a
    " `ord' might be used uninitialized in this function" warning

Python/bltinmodule.c

index fa560f7dc8dccd91a9149c21706cc5472db0277e..af4ae20e59d7b23674f4870edcc1bd8b1fd4ac3e 100644 (file)
@@ -1,4 +1,4 @@
-
+fo
 /* Built-in functions */
 
 #include "Python.h"
@@ -1512,20 +1512,22 @@ builtin_ord(PyObject *self, PyObject *args)
 
        if (PyString_Check(obj)) {
                size = PyString_GET_SIZE(obj);
-               if (size == 1)
+               if (size == 1) {
                        ord = (long)((unsigned char)*PyString_AS_STRING(obj));
+                       return PyInt_FromLong(ord);
+               }
        } else if (PyUnicode_Check(obj)) {
                size = PyUnicode_GET_SIZE(obj);
-               if (size == 1)
+               if (size == 1) {
                        ord = (long)*PyUnicode_AS_UNICODE(obj);
+                       return PyInt_FromLong(ord);
+               }
        } else {
                PyErr_Format(PyExc_TypeError,
                             "ord() expected string or Unicode character, " \
                             "%.200s found", obj->ob_type->tp_name);
                return NULL;
        }
-       if (size == 1)
-               return PyInt_FromLong(ord);
 
        PyErr_Format(PyExc_TypeError, 
                     "ord() expected a character, length-%d string found",