I messed up a bit with the previous patch. The while loop should get
executed only if the ioctl failed. Here's a fix.
--
Ville Syrj�l�
[EMAIL PROTECTED]
http://www.sci.fi/~syrjala/
Index: gfxdrivers/matrox/matrox_crtc2.c
===================================================================
RCS file: /cvs/directfb/DirectFB/gfxdrivers/matrox/matrox_crtc2.c,v
retrieving revision 1.3
diff -u -r1.3 matrox_crtc2.c
--- gfxdrivers/matrox/matrox_crtc2.c 11 Nov 2002 17:33:55 -0000 1.3
+++ gfxdrivers/matrox/matrox_crtc2.c 12 Nov 2002 19:53:36 -0000
@@ -403,10 +403,10 @@
int vdisplay = (dfb_config->matrox_ntsc ? 486/2 : 576/2) + 2;
#ifdef FBIO_WAITFORVSYNC
dfb_gfxcard_sync();
- ioctl( dfb_fbdev->fd, FBIO_WAITFORVSYNC, &one );
+ if (ioctl( dfb_fbdev->fd, FBIO_WAITFORVSYNC, &one ))
#endif
- while ((mga_in32( mdrv->mmio_base, C2VCOUNT ) & 0x00000FFF) != vdisplay)
- ;
+ while ((mga_in32( mdrv->mmio_base, C2VCOUNT ) & 0x00000FFF) != vdisplay)
+ ;
}
static void crtc2_set_mafc( MatroxDriverData *mdrv,