X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_properties.c;h=53db4764b282e413fa631bad83e806dfa9672e96;hb=8ad18633ab01f630da1f09a3efd3acc1307b46e7;hp=0bad06be18bba415f69acee8b31da234365e56f1;hpb=90da79f8e465d43102645de7323d15c12801515f;p=melted diff --git a/src/framework/mlt_properties.c b/src/framework/mlt_properties.c index 0bad06b..53db476 100644 --- a/src/framework/mlt_properties.c +++ b/src/framework/mlt_properties.c @@ -47,7 +47,7 @@ property_list; /** Memory leak checks. */ -//#define _MLT_PROPERTY_CHECKS_ +//#define _MLT_PROPERTY_CHECKS_ 2 #ifdef _MLT_PROPERTY_CHECKS_ static int properties_created = 0; @@ -346,7 +346,16 @@ int mlt_properties_set( mlt_properties this, char *name, char *value ) mlt_property property = mlt_properties_fetch( this, name ); // Set it if not NULL - if ( property != NULL && ( value == NULL || value[ 0 ] != '@' ) ) + if ( property == NULL ) + { + fprintf( stderr, "Whoops\n" ); + } + else if ( value == NULL ) + { + error = mlt_property_set_string( property, value ); + mlt_properties_do_mirror( this, name ); + } + else if ( *value != '@' ) { error = mlt_property_set_string( property, value ); mlt_properties_do_mirror( this, name ); @@ -698,10 +707,12 @@ void mlt_properties_close( mlt_properties this ) property_list *list = this->local; int index = 0; -#ifdef _MLT_PROPERTY_CHECKS_ +#if _MLT_PROPERTY_CHECKS_ == 1 // Show debug info mlt_properties_debug( this, "Closing", stderr ); +#endif +#ifdef _MLT_PROPERTY_CHECKS_ // Increment destroyed count properties_destroyed ++;