Support custom constructors for pidl-created types and support types based on pidl...
authorJelmer Vernooij <jelmer@samba.org>
Sat, 20 Dec 2008 23:09:30 +0000 (00:09 +0100)
committerJelmer Vernooij <jelmer@samba.org>
Sat, 20 Dec 2008 23:09:30 +0000 (00:09 +0100)
pidl/lib/Parse/Pidl/Samba4/Python.pm

index 4c598b3ca0da5f45bbcb414cd5e6f4bd0a35401a..15dbd67b7cfa009cc75ad143054d1cff977b109b 100644 (file)
@@ -221,14 +221,11 @@ sub PythonStruct($$$$$$)
                $self->pidl("");
        }
 
-       $self->pidl("static PyObject *py_$name\_new(PyTypeObject *self, PyObject *args, PyObject *kwargs)");
+       $self->pidl("static PyObject *py_$name\_new(PyTypeObject *type, PyObject *args, PyObject *kwargs)");
        $self->pidl("{");
        $self->indent;
-       $self->pidl("char *kwlist[] = {NULL};");
        $self->pidl("$cname *ret = talloc_zero(NULL, $cname);");
-       $self->pidl("if (!PyArg_ParseTupleAndKeywords(args, kwargs, \"\", kwlist))");
-       $self->pidl("\treturn NULL;");
-       $self->pidl("return py_talloc_import(&$name\_Type, ret);");
+       $self->pidl("return py_talloc_import(type, ret);");
        $self->deindent;
        $self->pidl("}");
        $self->pidl("");