]> git.sesse.net Git - mlt/blobdiff - src/modules/qimage/kdenlivetitle_wrapper.cpp
Fix serializing xmldata in kdenlivetitle (kdenlive-1841).
[mlt] / src / modules / qimage / kdenlivetitle_wrapper.cpp
index f6ec3818e33a772679cd1bca998c4a4bf1fe4b28..85747998d0615d09d69df334ebbda16ccea40649 100755 (executable)
@@ -414,7 +414,18 @@ void drawKdenliveTitle( producer_ktitle self, mlt_frame frame, int width, int he
                        scene = new QGraphicsScene();
                        scene->setItemIndexMethod( QGraphicsScene::NoIndex );
                         scene->setSceneRect(0, 0, mlt_properties_get_int( properties, "width" ), mlt_properties_get_int( properties, "height" ));
-                       loadFromXml( producer, scene, mlt_properties_get( producer_props, "xmldata" ), mlt_properties_get( producer_props, "templatetext" ) );
+                       if ( mlt_properties_get( producer_props, "resource" ) && mlt_properties_get( producer_props, "resource" )[0] != '\0' )
+                       {
+                               // The title has a resource property, so we read all properties from the resource.
+                               // Do not serialize the xmldata
+                               loadFromXml( producer, scene, mlt_properties_get( producer_props, "_xmldata" ), mlt_properties_get( producer_props, "templatetext" ) );
+                       }
+                       else
+                       {
+                               // The title has no resource, all data should be serialized
+                               loadFromXml( producer, scene, mlt_properties_get( producer_props, "xmldata" ), mlt_properties_get( producer_props, "templatetext" ) );
+                         
+                       }
                        mlt_properties_set_data( producer_props, "qscene", scene, 0, ( mlt_destructor )qscene_delete, NULL );
                }