summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libvo/vo_xmga.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/libvo/vo_xmga.c b/libvo/vo_xmga.c
index f227bc690c..10ce8477b7 100644
--- a/libvo/vo_xmga.c
+++ b/libvo/vo_xmga.c
@@ -185,6 +185,8 @@ static void flip_page(void){
vo_mga_flip_page();
}
+static int inited=0;
+
static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint32_t d_height, uint32_t fullscreen, char *title, uint32_t format,const vo_tune_info_t* info)
{
char * frame_mem;
@@ -266,6 +268,8 @@ static uint32_t config( uint32_t width, uint32_t height, uint32_t d_width, uint3
default: printf( "Sorry, this (%d) color depth not supported.\n",vo_depthonscreen ); return -1;
}
+ inited=1;
+
aspect(&d_width,&d_height,A_NOZOOM);
#ifdef HAVE_NEW_GUI
if ( vo_window == None )
@@ -349,14 +353,11 @@ static const vo_info_t* get_info( void )
static void
uninit(void)
{
- saver_on(mDisplay);
-#ifdef HAVE_NEW_GUI
- if ( vo_window == None )
-#endif
- {
- XDestroyWindow( mDisplay,vo_window );
- }
+ if(!inited) return;
+ inited=0;
mga_uninit();
+ saver_on(mDisplay);
+ vo_x11_uninit(mDisplay, vo_window);
printf("vo: uninit!\n");
}