diff options
author | Jelmer Vernooij <jelmer@samba.org> | 2011-01-03 01:43:51 +0100 |
---|---|---|
committer | Jelmer Vernooij <jelmer@samba.org> | 2011-01-03 02:34:05 +0100 |
commit | 22b7cb3f2905375b5a9d88d9309062ceec658540 (patch) | |
tree | d66a8c5d5f52bca003f241d2ed35509e835b257d /source4/lib/ldb | |
parent | 9fc2e6c352726d9b14afb5defaee399d20cf9b23 (diff) | |
download | samba-22b7cb3f2905375b5a9d88d9309062ceec658540.tar.gz samba-22b7cb3f2905375b5a9d88d9309062ceec658540.tar.bz2 samba-22b7cb3f2905375b5a9d88d9309062ceec658540.zip |
pyldb: Fix memory reference error.
Autobuild-User: Jelmer Vernooij <jelmer@samba.org>
Autobuild-Date: Mon Jan 3 02:34:05 CET 2011 on sn-devel-104
Diffstat (limited to 'source4/lib/ldb')
-rw-r--r-- | source4/lib/ldb/pyldb.c | 4 | ||||
-rwxr-xr-x | source4/lib/ldb/tests/python/api.py | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/source4/lib/ldb/pyldb.c b/source4/lib/ldb/pyldb.c index 47d12b928d..c2d75b43d3 100644 --- a/source4/lib/ldb/pyldb.c +++ b/source4/lib/ldb/pyldb.c @@ -1959,7 +1959,7 @@ static PyObject *py_ldb_msg_element_new(PyTypeObject *type, PyObject *args, PyOb return NULL; } el->values[i].length = PyString_Size(item); - el->values[i].data = talloc_memdup(el, + el->values[i].data = talloc_memdup(el, (uint8_t *)PyString_AsString(item), el->values[i].length+1); } } else { @@ -2187,7 +2187,7 @@ static PyObject *py_ldb_msg_add(PyLdbMessageObject *self, PyObject *args) if (!PyArg_ParseTuple(args, "O!", &PyLdbMessageElement, &py_element)) return NULL; - el = talloc_reference(msg, py_element->mem_ctx); + el = talloc_reference(msg, py_element->el); if (el == NULL) { PyErr_NoMemory(); return NULL; diff --git a/source4/lib/ldb/tests/python/api.py b/source4/lib/ldb/tests/python/api.py index cd9651e6f6..016ccc3955 100755 --- a/source4/lib/ldb/tests/python/api.py +++ b/source4/lib/ldb/tests/python/api.py @@ -607,6 +607,10 @@ class MessageElementTests(unittest.TestCase): y = ldb.MessageElement(["foo"]) self.assertEquals(y, x) + def test_extended(self): + el = ldb.MessageElement(["456"], ldb.FLAG_MOD_ADD, "bla") + self.assertEquals("MessageElement(['456'])", repr(el)) + class ModuleTests(unittest.TestCase): |