cudamemorycopy: Make sure writable caps before removing fields
authorSeungha Yang <seungha@centricular.com>
Mon, 27 Jun 2022 10:58:58 +0000 (19:58 +0900)
committerSeungha Yang <seungha@centricular.com>
Mon, 27 Jun 2022 11:28:31 +0000 (20:28 +0900)
The caps to be modified may not be writable when D3D11/GL/NVMM
are all disabled.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2664>

subprojects/gst-plugins-bad/sys/nvcodec/gstcudamemorycopy.c

index a7ded4c..9244d39 100644 (file)
@@ -224,6 +224,7 @@ create_transform_caps (GstCaps * caps, gboolean to_cuda)
         GST_CAPS_FEATURE_MEMORY_CUDA_MEMORY);
     ret = gst_caps_merge (ret, new_caps);
 
+    ret = gst_caps_make_writable (ret);
     _remove_field (ret, "texture-target");
 
     gst_caps_unref (sys_caps);
@@ -252,6 +253,7 @@ create_transform_caps (GstCaps * caps, gboolean to_cuda)
     new_caps = _set_caps_features (caps, GST_CAPS_FEATURE_MEMORY_SYSTEM_MEMORY);
 
     ret = gst_caps_merge (ret, new_caps);
+    ret = gst_caps_make_writable (ret);
     _remove_field (ret, "texture-target");
   }