- /* pack element factory strings */
- gst_registry_chunks_save_const_string (list, factory->longdesc);
+
+ /* pack element metadata strings */
+ gst_registry_chunks_save_string (list,
+ gst_structure_to_string (factory->metadata));
+ } else if (GST_IS_TRACER_FACTORY (feature)) {
+ /* Initialize with zeroes because of struct padding and
+ * valgrind complaining about copying uninitialized memory
+ */
+ pf = g_slice_new0 (GstRegistryChunkPluginFeature);
+ pf_size = sizeof (GstRegistryChunkPluginFeature);
+ chk = gst_registry_chunks_make_data (pf, pf_size);
+ } else if (GST_IS_DYNAMIC_TYPE_FACTORY (feature)) {
+ GstRegistryChunkDynamicTypeFactory *tmp;
+
+ tmp = g_slice_new0 (GstRegistryChunkDynamicTypeFactory);
+ chk =
+ gst_registry_chunks_make_data (tmp,
+ sizeof (GstRegistryChunkDynamicTypeFactory));
+ pf = (GstRegistryChunkPluginFeature *) tmp;