[Mplayer-cvslog] CVS: main/libvo vo_xv.c,1.27,1.28

Zoltan Ponekker pontscho at mplayer.dev.hu
Fri Aug 31 12:06:44 CEST 2001


Update of /cvsroot/mplayer/main/libvo
In directory mplayer:/var/tmp.root/cvs-serv26166

Modified Files:
	vo_xv.c 
Log Message:
add dealloc func

Index: vo_xv.c
===================================================================
RCS file: /cvsroot/mplayer/main/libvo/vo_xv.c,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- vo_xv.c	30 Aug 2001 16:05:04 -0000	1.27
+++ vo_xv.c	31 Aug 2001 10:06:32 -0000	1.28
@@ -263,7 +263,9 @@
        drwHeight=(dheight > vo_screenheight?vo_screenheight:dheight);
        printf( "[xv-fs] dcx: %d dcy: %d dx: %d dy: %d dw: %d dh: %d\n",drwcX,drwcY,drwX,drwY,drwWidth,drwHeight );
       }
-
+#ifdef HAVE_NEW_GUI
+     if ( vo_window == None )
+#endif
      saver_off(mDisplay);  // turning off screen saver
      return 0;
     }
@@ -297,6 +299,15 @@
  return;
 }
 
+static void deallocate_xvimage(int foo)
+{
+ XShmDetach( mDisplay,&Shminfo[foo] );
+ shmdt( Shminfo[foo].shmaddr );
+ XFlush( mDisplay );
+ XSync(mDisplay, False);
+ return;
+}
+
 static void check_events(void)
 {
  int e=vo_x11_check_events(mDisplay);
@@ -451,7 +462,13 @@
 }
 
 static void uninit(void) {
-    saver_on(mDisplay); // screen saver back on
+int i;
+#ifdef HAVE_NEW_GUI
+     if ( vo_window == None )
+#endif
+      saver_on(mDisplay); // screen saver back on
+for( i=0;i<num_buffers;i++ )
+ deallocate_xvimage( i );
 }
 
 




More information about the MPlayer-cvslog mailing list