(The clean up path of vout is in a need of more cleaning).
if( p_vout->p_module == NULL )
{
msg_Err( p_vout, "no suitable vout module" );
+ // FIXME it's ugly but that's exactly the function that need to be called.
+ EndThread( p_vout );
vlc_object_detach( p_vout );
vlc_object_release( p_vout );
return NULL;
}
#endif
+ /* FIXME does that function *really* need to be called inside the thread ? */
+
/* Destroy subpicture unit */
spu_Attach( p_vout->p_spu, VLC_OBJECT(p_vout), false );
spu_Destroy( p_vout->p_spu );