diff -r --context xorg-server-1.12.3/hw/xfree86/int10/generic.c xorg-server-1.12.3-fix/hw/xfree86/int10/generic.c
*** xorg-server-1.12.3/hw/xfree86/int10/generic.c	2012-07-06 07:17:19.000000000 +0200
--- xorg-server-1.12.3-fix/hw/xfree86/int10/generic.c	2012-08-29 00:15:42.000000000 +0200
***************
*** 178,184 ****
       */
      vbiosMem = (char *) base + V_BIOS;
      memset(vbiosMem, 0, 2 * V_BIOS_SIZE);
!     if (pci_device_read_rom(pInt->dev, vbiosMem) < V_BIOS_SIZE) {
          xf86DrvMsg(screen, X_WARNING,
                     "Unable to retrieve all of segment 0x0C0000.\n");
      }
--- 178,185 ----
       */
      vbiosMem = (char *) base + V_BIOS;
      memset(vbiosMem, 0, 2 * V_BIOS_SIZE);
!     if (pci_device_read_rom(pInt->dev, vbiosMem) != 0
! 		|| pInt->dev->rom_size < V_BIOS_SIZE) {
          xf86DrvMsg(screen, X_WARNING,
                     "Unable to retrieve all of segment 0x0C0000.\n");
      }
