freebsd-ports/x11-servers/XFree86-4-Server/files/patch-smi
Eric Anholt 00157b17ec Fix a crash with the siliconmotion (smi) driver.
PR:		ports/51450
Tested by:	Stacey Roberts <stacey@vickiandstacey.com>
Obtained from:	XFree86 bug #50
2003-05-03 22:18:03 +00:00

40 lines
1.5 KiB
Text

--- programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_driver.c.orig Wed Feb 5 09:45:29 2003
+++ programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_driver.c Fri May 2 03:09:24 2003
@@ -1410,7 +1410,7 @@
ENTER_PROC("SMI_Save");
/* Save the standard VGA registers */
- vgaHWSave(pScrn, vgaSavePtr, VGA_SR_MODE);
+ vgaHWSave(pScrn, vgaSavePtr, VGA_SR_ALL);
save->smiDACMask = VGAIN8(pSmi, VGA_DAC_MASK);
VGAOUT8(pSmi, VGA_DAC_READ_ADDR, 0);
for (i = 0; i < 256; i++)
@@ -1601,7 +1601,7 @@
VGAOUT8_INDEX(pSmi, VGA_SEQ_INDEX, VGA_SEQ_DATA, 0xA0, restore->SRA0);
/* Restore the standard VGA registers */
- vgaHWRestore(pScrn, vgaSavePtr, VGA_SR_MODE);
+ vgaHWRestore(pScrn, vgaSavePtr, VGA_SR_ALL);
if (restore->smiDACMask)
{
VGAOUT8(pSmi, VGA_DAC_MASK, restore->smiDACMask);
@@ -1672,7 +1672,7 @@
}
if (restore->modeInit)
- vgaHWRestore(pScrn, vgaSavePtr, VGA_SR_MODE);
+ vgaHWRestore(pScrn, vgaSavePtr, VGA_SR_ALL);
if (!SMI_LYNXM_SERIES(pSmi->Chipset))
{
--- programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_video.c.orig Sat Jan 11 19:55:49 2003
+++ programs/Xserver/hw/xfree86/drivers/siliconmotion/smi_video.c Fri May 2 03:09:24 2003
@@ -277,7 +277,7 @@
{XvSettable | XvGettable, 0, 1, XV_INTERLACED_NAME},
};
-static XF86AttributeRec SMI_VideoAttributes[N_ATTRS] = {
+static XF86AttributeRec SMI_VideoAttributes[2] = {
{XvSettable | XvGettable, 0, 255, XV_BRIGHTNESS_NAME},
{XvSettable | XvGettable, 0x000000, 0xFFFFFF, XV_COLORKEY_NAME},
};