diff --git a/gst-libs/gst/vaapi/gstvaapidisplay.c b/gst-libs/gst/vaapi/gstvaapidisplay.c index bb4694e3ec..d002b53734 100644 --- a/gst-libs/gst/vaapi/gstvaapidisplay.c +++ b/gst-libs/gst/vaapi/gstvaapidisplay.c @@ -419,13 +419,13 @@ end: static void gst_vaapi_display_lock_default(GstVaapiDisplay *display) { - g_static_mutex_lock(&display->priv->mutex); + g_static_rec_mutex_lock(&display->priv->mutex); } static void gst_vaapi_display_unlock_default(GstVaapiDisplay *display) { - g_static_mutex_unlock(&display->priv->mutex); + g_static_rec_mutex_unlock(&display->priv->mutex); } static void @@ -562,7 +562,7 @@ gst_vaapi_display_init(GstVaapiDisplay *display) priv->subpicture_formats = NULL; priv->create_display = TRUE; - g_static_mutex_init(&priv->mutex); + g_static_rec_mutex_init(&priv->mutex); } /** diff --git a/gst-libs/gst/vaapi/gstvaapidisplay_priv.h b/gst-libs/gst/vaapi/gstvaapidisplay_priv.h index 2427babf1c..308da874f3 100644 --- a/gst-libs/gst/vaapi/gstvaapidisplay_priv.h +++ b/gst-libs/gst/vaapi/gstvaapidisplay_priv.h @@ -69,7 +69,7 @@ G_BEGIN_DECLS * Base class for VA displays. */ struct _GstVaapiDisplayPrivate { - GStaticMutex mutex; + GStaticRecMutex mutex; VADisplay display; guint width; guint height;