From 59a68f8d85724a55861468a7a4f0efab4d900df6 Mon Sep 17 00:00:00 2001 From: Matthew Waters Date: Tue, 29 Sep 2015 00:25:00 +1000 Subject: gtk: fix assertion when the element has no peer When proxying keyboard/navigation/mouse events, only unref a successfully retreived peer pad. https://bugzilla.gnome.org/show_bug.cgi?id=755738 --- ext/gtk/gstgtkbasesink.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/ext/gtk/gstgtkbasesink.c b/ext/gtk/gstgtkbasesink.c index e11627b5b..dd3af9101 100644 --- a/ext/gtk/gstgtkbasesink.c +++ b/ext/gtk/gstgtkbasesink.c @@ -276,10 +276,12 @@ gst_gtk_base_sink_navigation_send_event (GstNavigation * navigation, GST_TRACE_OBJECT (sink, "navigation event %" GST_PTR_FORMAT, structure); - if (GST_IS_PAD (pad) && GST_IS_EVENT (event)) - gst_pad_send_event (pad, event); + if (GST_IS_PAD (pad)) { + if (GST_IS_EVENT (event)) + gst_pad_send_event (pad, event); - gst_object_unref (pad); + gst_object_unref (pad); + } } static void -- cgit v1.2.1