diff --git a/ChangeLog b/ChangeLog index 13e07592b9..b11abfedc7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2005-07-06 Thomas Vander Stichele + + * check/gst/gstpad.c: + * check/gstcheck.c: + * gst/gstpad.c: (gst_pad_get_internal_links_default): + if pad has no parent, return NULL as list of internal links + 2005-07-05 Andy Wingo * gst/elements/gstfilesrc.c: @@ -9,7 +16,7 @@ 2005-07-05 Stefan Kost * Makefile.am: - better report genration target (lcov needs a patch) + better report genration target (lcov needs a patch) 2005-07-05 Andy Wingo diff --git a/check/gst/gstpad.c b/check/gst/gstpad.c index cfbce7926a..182313beaf 100644 --- a/check/gst/gstpad.c +++ b/check/gst/gstpad.c @@ -48,10 +48,11 @@ START_TEST (test_link) fail_unless (srct == NULL); } -END_TEST +END_TEST; + /* threaded link/unlink */ /* use globals */ - GstPad * src, *sink; +GstPad *src, *sink; void thread_link_unlink (gpointer data) @@ -88,7 +89,8 @@ START_TEST (test_link_unlink_threaded) MAIN_STOP_THREADS (); } -END_TEST +END_TEST; + START_TEST (test_refcount) { GstPad *src, *sink; @@ -125,7 +127,8 @@ START_TEST (test_refcount) gst_caps_unref (caps); } -END_TEST +END_TEST; + START_TEST (test_get_allowed_caps) { GstPad *src, *sink; @@ -177,7 +180,9 @@ START_TEST (test_get_allowed_caps) gst_caps_unref (caps); } -END_TEST Suite * +END_TEST; + +Suite * gst_pad_suite (void) { Suite *s = suite_create ("GstPad"); diff --git a/gst/gstpad.c b/gst/gstpad.c index 040b80ec2d..7350944757 100644 --- a/gst/gstpad.c +++ b/gst/gstpad.c @@ -2270,7 +2270,7 @@ peer_error: * pads inside the parent element with opposite direction. * The caller must free this list after use. * - * Returns: a newly allocated #GList of pads. + * Returns: a newly allocated #GList of pads, or NULL if the pad has no parent. * * Not MT safe. */ @@ -2287,6 +2287,9 @@ gst_pad_get_internal_links_default (GstPad * pad) direction = pad->direction; parent = GST_PAD_PARENT (pad); + if (!parent) + return NULL; + parent_pads = parent->pads; while (parent_pads) { diff --git a/tests/check/gst/gstpad.c b/tests/check/gst/gstpad.c index cfbce7926a..182313beaf 100644 --- a/tests/check/gst/gstpad.c +++ b/tests/check/gst/gstpad.c @@ -48,10 +48,11 @@ START_TEST (test_link) fail_unless (srct == NULL); } -END_TEST +END_TEST; + /* threaded link/unlink */ /* use globals */ - GstPad * src, *sink; +GstPad *src, *sink; void thread_link_unlink (gpointer data) @@ -88,7 +89,8 @@ START_TEST (test_link_unlink_threaded) MAIN_STOP_THREADS (); } -END_TEST +END_TEST; + START_TEST (test_refcount) { GstPad *src, *sink; @@ -125,7 +127,8 @@ START_TEST (test_refcount) gst_caps_unref (caps); } -END_TEST +END_TEST; + START_TEST (test_get_allowed_caps) { GstPad *src, *sink; @@ -177,7 +180,9 @@ START_TEST (test_get_allowed_caps) gst_caps_unref (caps); } -END_TEST Suite * +END_TEST; + +Suite * gst_pad_suite (void) { Suite *s = suite_create ("GstPad");