All pastes #739979 Raw Edit

Something

public text v1 · immutable
·published 2007-10-17 16:37 UTC
rendered paste body
Index: gst/gst.defs
===================================================================
RCS file: /cvs/gstreamer/gst-python/gst/gst.defs,v
retrieving revision 1.129
diff -u -p -r1.129 gst.defs
--- gst/gst.defs        26 Jan 2007 11:58:55 -0000      1.129
+++ gst/gst.defs        6 Feb 2007 16:12:30 -0000
@@ -1822,7 +1822,16 @@
   (return-type "GQuark")
 )

-
+(define-function new
+  (c-name "g_error_new")
+  (is-constructor-of "GError")
+  (return-type "GError*")
+  (parameters
+   '("gchar*" "domain")
+   '("gint" "code")
+   '("gchar*" "message")
+   )
+)

 ;; From ../gstreamer/gst/gstevent.h

Index: gst/gst.override
===================================================================
RCS file: /cvs/gstreamer/gst-python/gst/gst.override,v
retrieving revision 1.113
diff -u -p -r1.113 gst.override
--- gst/gst.override    29 Jan 2007 11:16:35 -0000      1.113
+++ gst/gst.override    6 Feb 2007 16:12:30 -0000
@@ -1218,3 +1218,29 @@ _wrap_gst_segment_clip (PyObject * self,

     return py_ret;
 }
+%%
+override g_error_new kwargs
+static int
+_wrap_g_error_new(PyGBoxed *self, PyObject *args, PyObject *kwargs)
+{
+    static char *kwlist[] = { "domain", "code", "message", NULL };
+    int code;
+    gchar *message;
+    gchar *domain;
+    GQuark domainq;
+
+    if (!PyArg_ParseTupleAndKeywords(args, kwargs,"sis:GError.__init__", kwlist, &domain, &code, &message))
+        return -1;
+    domainq = g_quark_from_string(domain);
+
+    self->gtype = GST_TYPE_G_ERROR;
+    self->free_on_dealloc = FALSE;
+    self->boxed = g_error_new(domainq, code, message);
+
+    if (!self->boxed) {
+        PyErr_SetString(PyExc_RuntimeError, "could not create GError object");
+        return -1;
+    }
+    self->free_on_dealloc = TRUE;
+    return 0;
+}