]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
PyUnicode_CopyCharacters() uses exceptions instead of assertions
authorVictor Stinner <victor.stinner@haypocalc.com>
Fri, 30 Sep 2011 00:26:10 +0000 (02:26 +0200)
committerVictor Stinner <victor.stinner@haypocalc.com>
Fri, 30 Sep 2011 00:26:10 +0000 (02:26 +0200)
Call PyErr_BadInternalCall() if inputs are not unicode strings.

Objects/unicodeobject.c

index 065b5e76d7e62e21064d1826a45e62541e9dc715..a02c2227fc1f9fc9b31b59020d7ddfe73c05b4dc 100644 (file)
@@ -626,8 +626,10 @@ PyUnicode_CopyCharacters(PyObject *to, Py_ssize_t to_start,
     unsigned int from_kind, to_kind;
     void *from_data, *to_data;
 
-    assert(PyUnicode_Check(from));
-    assert(PyUnicode_Check(to));
+    if (!PyUnicode_Check(from) || !PyUnicode_Check(to)) {
+        PyErr_BadInternalCall();
+        return -1;
+    }
 
     if (PyUnicode_READY(from))
         return -1;