pyldb: py_ldb_dn_extended_str() uses PyErr_LDB_DN_OR_RAISE()
authorDouglas Bagnall <douglas.bagnall@catalyst.net.nz>
Thu, 14 Mar 2024 04:07:52 +0000 (17:07 +1300)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 10 Apr 2024 05:13:32 +0000 (05:13 +0000)
Signed-off-by: Douglas Bagnall <douglas.bagnall@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
lib/ldb/pyldb.c

index ea8df507f56357697a3fea98024f842cfc6a9822..98e0e4d9c8915cb798d360cbcc1a458607f2ce17 100644 (file)
@@ -503,15 +503,17 @@ static PyObject *py_ldb_dn_canonical_ex_str(PyObject *self,
        return PyUnicode_FromString(ldb_dn_canonical_ex_string(dn, dn));
 }
 
-static PyObject *py_ldb_dn_extended_str(PyLdbDnObject *self, PyObject *args, PyObject *kwargs)
+static PyObject *py_ldb_dn_extended_str(PyObject *self, PyObject *args, PyObject *kwargs)
 {
        const char * const kwnames[] = { "mode", NULL };
        int mode = 1;
+       struct ldb_dn *dn = NULL;
+       PyErr_LDB_DN_OR_RAISE(self, dn);
        if (!PyArg_ParseTupleAndKeywords(args, kwargs, "|i",
                                         discard_const_p(char *, kwnames),
                                         &mode))
                return NULL;
-       return PyUnicode_FromString(ldb_dn_get_extended_linearized(self->dn, self->dn, mode));
+       return PyUnicode_FromString(ldb_dn_get_extended_linearized(dn, dn, mode));
 }
 
 static PyObject *py_ldb_dn_get_extended_component(PyLdbDnObject *self, PyObject *args)