pyldb: Don't use the internal macro PyObject_REPR
authorPetr Viktorin <pviktori@redhat.com>
Wed, 10 Jun 2015 13:41:57 +0000 (15:41 +0200)
committerStefan Metzmacher <metze@samba.org>
Thu, 5 Nov 2015 17:04:24 +0000 (18:04 +0100)
Signed-off-by: Petr Viktorin <pviktori@redhat.com>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Stefan Metzmacher <metze@samba.org>
lib/ldb/pyldb.c

index 196662583cc33c627c767d073ff80590c6841c17..66369cb57bf6b880faac71f11d5eb3519f0ba17c 100644 (file)
@@ -3002,10 +3002,16 @@ static PyGetSetDef py_ldb_msg_getset[] = {
 
 static PyObject *py_ldb_msg_repr(PyLdbMessageObject *self)
 {
-       PyObject *dict = PyDict_New(), *ret;
+       PyObject *dict = PyDict_New(), *ret, *repr;
        if (PyDict_Update(dict, (PyObject *)self) != 0)
                return NULL;
-       ret = PyString_FromFormat("Message(%s)", PyObject_REPR(dict));
+       repr = PyObject_Repr(dict);
+       if (repr == NULL) {
+               Py_DECREF(dict);
+               return NULL;
+       }
+       ret = PyString_FromFormat("Message(%s)", PyString_AsString(repr));
+       Py_DECREF(repr);
        Py_DECREF(dict);
        return ret;
 }