# include "config.h"
#endif
-#include <vlc/vlc.h>
+#include <vlc_common.h>
#include <vlc_interface.h>
#include <vlc_playlist.h>
#include <vlc_vout.h>
static void DirectXPopupMenu( event_thread_t *p_event, bool b_open )
{
- playlist_t *p_playlist =
- vlc_object_find( p_event, VLC_OBJECT_PLAYLIST, FIND_ANYWHERE );
- if( p_playlist != NULL )
- {
- vlc_value_t val;
- val.b_bool = b_open;
- var_Set( p_playlist, "intf-popupmenu", val );
- vlc_object_release( p_playlist );
- }
+ vlc_value_t val;
+ val.b_bool = b_open;
+ var_Set( p_event->p_libvlc, "intf-popupmenu", val );
}
static int DirectXConvertKey( int i_key );
/* Creating a window under Windows also initializes the thread's event
* message queue */
if( DirectXCreateWindow( p_event->p_vout ) )
- {
- msg_Err( p_event, "out of memory" );
p_event->b_dead = true;
- }
/* Signal the creation of the window */
vlc_thread_ready( p_event );
/* Main loop */
/* GetMessage will sleep if there's no message in the queue */
- while( !p_event->b_die && GetMessage( &msg, 0, 0, 0 ) )
+ while( vlc_object_alive (p_event) && GetMessage( &msg, 0, 0, 0 ) )
{
/* Check if we are asked to exit */
- if( p_event->b_die )
+ if( !vlc_object_alive (p_event) )
break;
switch( msg.message )
/* the user wants to close the window */
case WM_CLOSE:
{
- playlist_t * p_playlist =
- (playlist_t *)vlc_object_find( p_vout, VLC_OBJECT_PLAYLIST,
- FIND_ANYWHERE );
- if( p_playlist == NULL )
+ playlist_t * p_playlist = pl_Yield( p_vout );
+ if( p_playlist )
{
- return 0;
+ playlist_Stop( p_playlist );
+ pl_Release( p_playlist );
}
-
- playlist_Stop( p_playlist );
- vlc_object_release( p_playlist );
return 0;
}