]> git.sesse.net Git - mlt/commitdiff
Unit purge
authorlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Sat, 21 Aug 2004 09:47:59 +0000 (09:47 +0000)
committerlilo_booter <lilo_booter@d19143bc-622f-0410-bfdd-b5b2a6649095>
Sat, 21 Aug 2004 09:47:59 +0000 (09:47 +0000)
git-svn-id: https://mlt.svn.sourceforge.net/svnroot/mlt/trunk/mlt@382 d19143bc-622f-0410-bfdd-b5b2a6649095

src/miracle/miracle_local.c
src/miracle/miracle_unit.c

index f89d90e292962e59d66cb3254e5a1c16a04091af..374d5fd479c052501b75c564cae9e9a5652ecaa3 100644 (file)
@@ -504,7 +504,7 @@ static void miracle_local_close( miracle_local local )
 {
        miracle_delete_all_units();
 #ifdef linux
-       pthread_kill_other_threads_np();
+       //pthread_kill_other_threads_np();
        miracle_log( LOG_DEBUG, "Clean shutdown." );
        free( local );
        mlt_factory_close( );
index ce9dac819568ef620a72969c2fbea08d13463c80..2fe0c7a978a0ccc8bee0a5ca5c30585fa1d17e8c 100644 (file)
@@ -278,6 +278,8 @@ valerie_error_code miracle_unit_load( miracle_unit unit, char *clip, int32_t in,
                mlt_properties properties = unit->properties;
                mlt_properties_set_data( unit->producers, clip, instance, 0, ( mlt_destructor )mlt_producer_close, NULL );
                mlt_playlist playlist = mlt_properties_get_data( properties, "playlist", NULL );
+               mlt_consumer consumer = mlt_properties_get_data( unit->properties, "consumer", NULL );
+               mlt_consumer_purge( consumer );
                mlt_playlist_append_io( playlist, instance, in, out );
                miracle_log( LOG_DEBUG, "loaded clip %s", clip );
                miracle_unit_status_communicate( unit );
@@ -327,7 +329,9 @@ valerie_error_code miracle_unit_clean( miracle_unit unit )
 
 valerie_error_code miracle_unit_clear( miracle_unit unit )
 {
+       mlt_consumer consumer = mlt_properties_get_data( unit->properties, "consumer", NULL );
        clear_unit( unit );
+       mlt_consumer_purge( consumer );
        miracle_log( LOG_DEBUG, "Cleared playlist" );
        miracle_unit_status_communicate( unit );
        return valerie_ok;