static void* Run( vlc_object_t *p_this )
{
input_thread_t *p_input = (input_thread_t *)p_this;
+ int canc = vlc_savecancel ();
+
/* Signal that the thread is launched */
vlc_thread_ready( p_input );
/* Clean up */
End( p_input );
-
+ vlc_restorecancel (canc);
return NULL;
}
static void* RunAndDestroy( vlc_object_t *p_this )
{
input_thread_t *p_input = (input_thread_t *)p_this;
+ int canc;
+
/* Signal that the thread is launched */
vlc_thread_ready( p_input );
+ canc = vlc_savecancel ();
if( Init( p_input ) )
goto exit;
exit:
/* Release memory */
vlc_object_release( p_input );
+ vlc_restorecancel (canc);
return 0;
}