+
+ /* Allow on the fly drawable changing. This is tricky has this may
+ * not be supported by every vout. We though can't disable it
+ * because of some creepy drawable type that are not flexible enough
+ * (Win32 HWND for instance) */
+ p_input_thread = libvlc_get_input_thread( p_mi, p_e );
+ if( !p_input_thread ) {
+ /* No input, nothing more to do, we are fine */
+ libvlc_exception_clear( p_e );
+ return;
+ }
+
+ p_vout = vlc_object_find( p_input_thread, VLC_OBJECT_VOUT, FIND_CHILD );
+ if( p_vout )
+ {
+ vout_Control( p_vout , VOUT_REPARENT, drawable);
+ vlc_object_release( p_vout );
+ }
+ vlc_object_release( p_input_thread );