video-converter: copy config fields
authorWim Taymans <wtaymans@redhat.com>
Wed, 29 Oct 2014 12:19:00 +0000 (13:19 +0100)
committerWim Taymans <wtaymans@redhat.com>
Wed, 29 Oct 2014 15:26:19 +0000 (16:26 +0100)
When setting a new config, copy all the fields into our own config and
not only the ones we know about.

gst-libs/gst/video/video-converter.c

index 6e43d00..b0a3360 100644 (file)
@@ -599,6 +599,16 @@ video_dither_halftone (GstVideoConverter * convert, guint16 * pixels, int j)
   }
 }
 
+static gboolean
+copy_config (GQuark field_id, const GValue * value, gpointer user_data)
+{
+  GstVideoConverter *convert = user_data;
+
+  gst_structure_id_set_value (convert->config, field_id, value);
+
+  return TRUE;
+}
+
 /**
  * gst_video_converter_set_config:
  * @convert: a #GstVideoConverter
@@ -653,6 +663,9 @@ gst_video_converter_set_config (GstVideoConverter * convert,
     else
       res = FALSE;
   }
+  if (res)
+    gst_structure_foreach (config, copy_config, convert);
+
   gst_structure_free (config);
 
   return res;