diff --git a/gst-libs/gst/gl/gstglwindow.c b/gst-libs/gst/gl/gstglwindow.c index 4971d50c3b..90ea219bec 100644 --- a/gst-libs/gst/gl/gstglwindow.c +++ b/gst-libs/gst/gl/gstglwindow.c @@ -337,6 +337,9 @@ gst_gl_window_finalize (GObject * object) while (window->nav_alive) { g_cond_wait (&window->nav_destroy_cond, &window->nav_lock); } + /* release resource hold by navigation thread */ + g_thread_join(window->priv->navigation_thread); + window->priv->navigation_thread = NULL; g_mutex_unlock (&window->nav_lock); }