surface_id = GST_VAAPI_OBJECT_ID(surface);
GST_DEBUG("surface %" GST_VAAPI_ID_FORMAT, GST_VAAPI_ID_ARGS(surface_id));
+ if (priv->subpictures) {
+ g_ptr_array_foreach(priv->subpictures, destroy_subpicture_cb, NULL);
+ g_ptr_array_free(priv->subpictures, TRUE);
+ priv->subpictures = NULL;
+ }
+
if (surface_id != VA_INVALID_SURFACE) {
GST_VAAPI_DISPLAY_LOCK(display);
status = vaDestroySurfaces(
GST_VAAPI_ID_ARGS(surface_id));
GST_VAAPI_OBJECT_ID(surface) = VA_INVALID_SURFACE;
}
-
- if (priv->subpictures) {
- g_ptr_array_foreach(priv->subpictures, destroy_subpicture_cb, NULL);
- g_ptr_array_free(priv->subpictures, TRUE);
- priv->subpictures = NULL;
- }
}
static gboolean