diff --git a/gst/vaapi/gstvaapisink.c b/gst/vaapi/gstvaapisink.c index 0bdc714497..6663065d41 100644 --- a/gst/vaapi/gstvaapisink.c +++ b/gst/vaapi/gstvaapisink.c @@ -836,6 +836,11 @@ gst_vaapisink_navigation_send_event (GstNavigation * navigation, GstVaapiSink *const sink = GST_VAAPISINK (navigation); GstPad *peer; + if (!sink->window) { + gst_structure_free (structure); + return; + } + if ((peer = gst_pad_get_peer (GST_VAAPI_PLUGIN_BASE_SINK_PAD (sink)))) { GstEvent *event; GstVaapiRectangle *disp_rect = &sink->display_rect; @@ -843,9 +848,6 @@ gst_vaapisink_navigation_send_event (GstNavigation * navigation, event = gst_event_new_navigation (structure); - if (!sink->window) - return; - /* We calculate scaling using the original video frames geometry to include pixel aspect ratio scaling. */ xscale = (gdouble) sink->video_width / disp_rect->width;