]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
print_exception(): don't encode the module name to UTF-8
authorVictor Stinner <victor.stinner@gmail.com>
Wed, 6 Nov 2013 23:12:30 +0000 (00:12 +0100)
committerVictor Stinner <victor.stinner@gmail.com>
Wed, 6 Nov 2013 23:12:30 +0000 (00:12 +0100)
Replace _PyUnicode_AsString()+strcmp() with PyUnicode_CompareWithASCIIString().

Python/pythonrun.c

index e510e6f78abba98bc91ced8bbcbe7bfd325553bb..e0c863811a4bb349c3618515f9d1b58ca881f16d 100644 (file)
@@ -1928,10 +1928,9 @@ print_exception(PyObject *f, PyObject *value)
             err = PyFile_WriteString("<unknown>", f);
         }
         else {
-            char* modstr = _PyUnicode_AsString(moduleName);
-            if (modstr && strcmp(modstr, "builtins"))
+            if (PyUnicode_CompareWithASCIIString(moduleName, "builtins") != 0)
             {
-                err = PyFile_WriteString(modstr, f);
+                err = PyFile_WriteObject(moduleName, f, Py_PRINT_RAW);
                 err += PyFile_WriteString(".", f);
             }
             Py_DECREF(moduleName);