Don't talloc_free() the UUID before we return.
authorAndrew Bartlett <abartlet@samba.org>
Wed, 12 Mar 2008 22:53:32 +0000 (09:53 +1100)
committerAndrew Bartlett <abartlet@samba.org>
Wed, 12 Mar 2008 22:53:32 +0000 (09:53 +1100)
This error caused us to put a 0x80 byte at the end of GUID, which was
only detected by OpenLDAP's schema checking.

Andrew Bartlett
(This used to be commit fd99b7719bcb503e2695b2cbad0230fa23a094ca)

source4/scripting/python/uuidmodule.c

index e05b286dd01c3bdfd7edbe1564ca0f8e417e4eda..cd9a1cb4d52f29ee5c5cb05298e9dd2b07750045 100644 (file)
@@ -24,6 +24,7 @@
 static PyObject *uuid_random(PyObject *self, PyObject *args)
 {
        struct GUID guid;
+       PyObject *pyobj;
        char *str;
 
        if (!PyArg_ParseTuple(args, (char *)""))
@@ -37,9 +38,11 @@ static PyObject *uuid_random(PyObject *self, PyObject *args)
                return NULL;
        }
 
+       pyobj = PyString_FromString(str);
+
        talloc_free(str);
 
-       return PyString_FromString(str);
+       return pyobj;
 }
 
 static PyMethodDef methods[] = {