diff --git a/ChangeLog b/ChangeLog index 748a77d845bd56dace2b3b183b4860285b8b6f58..41486a352787118e23e923bed6d57bf1d055d7f2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2004-07-15 Benjamin Otte + + * gst/gstelement.h: + Don't GST_ERROR_OBJECT smpty strings - Solaris doesn't like NULL + strings. + * gst/gstelement.c (gst_element_class_init): + GError's are boxed, not objects + * gst/gstmarshal.list: + update list for the fixed error signal + 2004-07-14 Andy Wingo * gst/gsttag.c: Add a tag merge func for pointers. The header was diff --git a/gst/gstelement.c b/gst/gstelement.c index d1772f8043183f21508e57e123a57cd45506006f..e0973f058b3fde62a81eede86c8699f0d11ca526 100644 --- a/gst/gstelement.c +++ b/gst/gstelement.c @@ -139,7 +139,7 @@ gst_element_class_init (GstElementClass * klass) gst_element_signals[ERROR] = g_signal_new ("error", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, G_STRUCT_OFFSET (GstElementClass, error), NULL, NULL, - gst_marshal_VOID__OBJECT_OBJECT_STRING, G_TYPE_NONE, 3, GST_TYPE_ELEMENT, + gst_marshal_VOID__OBJECT_BOXED_STRING, G_TYPE_NONE, 3, GST_TYPE_ELEMENT, GST_TYPE_G_ERROR, G_TYPE_STRING); gst_element_signals[EOS] = g_signal_new ("eos", G_TYPE_FROM_CLASS (klass), G_SIGNAL_RUN_LAST, diff --git a/gst/gstelement.h b/gst/gstelement.h index e196a0d57543c83b098e31b004ea268304bdc1b4..4fee1b9616c76083c19ea21ca156e995bf394837 100644 --- a/gst/gstelement.h +++ b/gst/gstelement.h @@ -143,7 +143,9 @@ typedef enum { #define GST_ELEMENT_ERROR(el, domain, code, message, debug) G_STMT_START { \ gchar *__msg = _gst_element_error_printf message; \ gchar *__dbg = _gst_element_error_printf debug; \ - GST_ERROR_OBJECT (el, "%s", __msg); \ + if (__msg) \ + GST_ERROR_OBJECT (el, "%s", __msg); \ + if (__dbg) \ GST_ERROR_OBJECT (el, "%s", __dbg); \ gst_element_error_full (GST_ELEMENT(el), \ GST_ ## domain ## _ERROR, GST_ ## domain ## _ERROR_ ## code, \ diff --git a/gst/gstmarshal.list b/gst/gstmarshal.list index 7ec2067f809c0ca4f1e1326dc0739672feb7d213..16f5a054cc30b41ea1e9387147f9f14582da6424 100644 --- a/gst/gstmarshal.list +++ b/gst/gstmarshal.list @@ -9,6 +9,7 @@ VOID:OBJECT VOID:OBJECT,PARAM VOID:OBJECT,POINTER VOID:OBJECT,BOXED +VOID:OBJECT,BOXED,STRING VOID:OBJECT,OBJECT,STRING VOID:OBJECT,STRING VOID:INT,INT