diff --git a/0001-Unclaim-PCI-slot-if-driver-probing-fails.patch b/0001-Unclaim-PCI-slot-if-driver-probing-fails.patch index b84fbb3..bab0f3d 100644 --- a/0001-Unclaim-PCI-slot-if-driver-probing-fails.patch +++ b/0001-Unclaim-PCI-slot-if-driver-probing-fails.patch @@ -12,10 +12,10 @@ available. Later on VESA cannot claim the device. hw/xfree86/common/xf86pciBus.c | 19 +++++++++++++++++++ 3 files changed, 22 insertions(+), 1 deletions(-) -Index: xorg-server-1.6.1/hw/xfree86/common/xf86.h +Index: xorg-server-1.6.3/hw/xfree86/common/xf86.h =================================================================== ---- xorg-server-1.6.1.orig/hw/xfree86/common/xf86.h -+++ xorg-server-1.6.1/hw/xfree86/common/xf86.h +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86.h ++++ xorg-server-1.6.3/hw/xfree86/common/xf86.h @@ -97,6 +97,7 @@ extern Bool xf86DRI2Enabled(void); Bool xf86CheckPciSlot( const struct pci_device * ); int xf86ClaimPciSlot( struct pci_device *, DriverPtr drvp, @@ -24,11 +24,11 @@ Index: xorg-server-1.6.1/hw/xfree86/common/xf86.h Bool xf86ParsePciBusString(const char *busID, int *bus, int *device, int *func); Bool xf86ComparePciBusString(const char *busID, int bus, int device, int func); -Index: xorg-server-1.6.1/hw/xfree86/common/xf86Init.c +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Init.c =================================================================== ---- xorg-server-1.6.1.orig/hw/xfree86/common/xf86Init.c -+++ xorg-server-1.6.1/hw/xfree86/common/xf86Init.c -@@ -514,7 +514,8 @@ probe_devices_from_device_sections(Drive +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Init.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Init.c +@@ -525,7 +525,8 @@ probe_devices_from_device_sections(Drive if ((*drvp->PciProbe)(drvp, entry, pPci, devices[j].match_data)) { foundScreen = TRUE; @@ -38,11 +38,11 @@ Index: xorg-server-1.6.1/hw/xfree86/common/xf86Init.c } break; -Index: xorg-server-1.6.1/hw/xfree86/common/xf86pciBus.c +Index: xorg-server-1.6.3/hw/xfree86/common/xf86pciBus.c =================================================================== ---- xorg-server-1.6.1.orig/hw/xfree86/common/xf86pciBus.c -+++ xorg-server-1.6.1/hw/xfree86/common/xf86pciBus.c -@@ -755,6 +755,25 @@ xf86ClaimPciSlot(struct pci_device * d, +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86pciBus.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86pciBus.c +@@ -753,6 +753,25 @@ xf86ClaimPciSlot(struct pci_device * d, } /* diff --git a/0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch b/0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch index 21998f1..e5fd6c7 100644 --- a/0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch +++ b/0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch @@ -10,9 +10,11 @@ even if idev is null. This takes down the xserver hard in some cases hw/xfree86/common/xf86Xinput.c | 23 +++++++++++++---------- 1 files changed, 13 insertions(+), 10 deletions(-) ---- xorg-server-1.6.0/hw/xfree86/common/xf86Xinput.c.orig 2009-02-25 20:12:11.000000000 +0100 -+++ xorg-server-1.6.0/hw/xfree86/common/xf86Xinput.c 2009-02-27 17:26:35.000000000 +0100 -@@ -675,17 +675,20 @@ DeleteInputDeviceRequest(DeviceIntPtr pD +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Xinput.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Xinput.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Xinput.c +@@ -679,17 +679,20 @@ DeleteInputDeviceRequest(DeviceIntPtr pD else xf86DeleteInput(pInfo, 0); diff --git a/acpi-warning.diff b/acpi-warning.diff index e519baf..e0aafd6 100644 --- a/acpi-warning.diff +++ b/acpi-warning.diff @@ -1,4 +1,6 @@ ---- hw/xfree86/os-support/linux/lnx_acpi.c +Index: hw/xfree86/os-support/linux/lnx_acpi.c +=================================================================== +--- hw/xfree86/os-support/linux/lnx_acpi.c.orig +++ hw/xfree86/os-support/linux/lnx_acpi.c @@ -163,8 +163,6 @@ doLnxACPIOpen(void) addr.sun_family = AF_UNIX; diff --git a/acpi_events.diff b/acpi_events.diff index 91a0947..3f32da5 100644 --- a/acpi_events.diff +++ b/acpi_events.diff @@ -1,7 +1,8 @@ -diff -urp xorg-server-1.1.99.901/hw/xfree86/os-support/linux/lnx_apm.c ../xorg-server-1.1.99.901/hw/xfree86/os-support/linux/lnx_apm.c ---- xorg-server-1.1.99.901/hw/xfree86/os-support/linux/lnx_apm.c 2006-10-12 00:42:19.000000000 +0200 -+++ ../xorg-server-1.1.99.901/hw/xfree86/os-support/linux/lnx_apm.c 2006-11-20 11:50:46.000000000 +0100 -@@ -180,7 +180,7 @@ lnxAPMOpen(void) +Index: xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_apm.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/os-support/linux/lnx_apm.c ++++ xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_apm.c +@@ -189,7 +189,7 @@ lnxAPMOpen(void) close(pfd); xf86PMGetEventFromOs = lnxPMGetEventFromOs; xf86PMConfirmEventToOs = lnxPMConfirmEventToOs; diff --git a/autoconfig_fallback_fbdev_first.diff b/autoconfig_fallback_fbdev_first.diff index 1414884..1ee022a 100644 --- a/autoconfig_fallback_fbdev_first.diff +++ b/autoconfig_fallback_fbdev_first.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/common/xf86AutoConfig.c.orig 2009-06-04 15:36:33.000000000 +0000 -+++ hw/xfree86/common/xf86AutoConfig.c 2009-06-04 15:38:22.000000000 +0000 -@@ -521,7 +524,7 @@ listPossibleVideoDrivers(char *matches[] +Index: hw/xfree86/common/xf86AutoConfig.c +=================================================================== +--- hw/xfree86/common/xf86AutoConfig.c.orig ++++ hw/xfree86/common/xf86AutoConfig.c +@@ -513,7 +513,7 @@ listPossibleVideoDrivers(char *matches[] /* Fallback to platform default hardware */ if (i < (nmatches - 1)) { #if defined(__i386__) || defined(__amd64__) || defined(__hurd__) @@ -9,7 +11,7 @@ #elif defined(__sparc__) && !defined(sun) matches[i++] = xnfstrdup("sunffb"); #endif -@@ -532,7 +535,7 @@ listPossibleVideoDrivers(char *matches[] +@@ -524,7 +524,7 @@ listPossibleVideoDrivers(char *matches[] #if !defined(__linux__) && defined(__sparc__) matches[i++] = xnfstrdup("wsfb"); #else diff --git a/bitmap_always_unscaled.diff b/bitmap_always_unscaled.diff index 42b7010..9aeafbe 100644 --- a/bitmap_always_unscaled.diff +++ b/bitmap_always_unscaled.diff @@ -23,11 +23,24 @@ Fabian and Stefan Dirsch. hw/xfree86/utils/xorgconfig/xorgconfig.c | 4 +--- 3 files changed, 5 insertions(+), 7 deletions(-) -diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am -index 03c2c3a..843efb7 100644 ---- a/hw/xfree86/Makefile.am -+++ b/hw/xfree86/Makefile.am -@@ -105,11 +105,11 @@ dist_options_DATA = Options +Index: xorg-server-1.6.3/configure.ac +=================================================================== +--- xorg-server-1.6.3.orig/configure.ac ++++ xorg-server-1.6.3/configure.ac +@@ -466,7 +466,7 @@ AC_ARG_WITH(builderstring, AS_HELP_STR + AC_ARG_WITH(fontdir, AS_HELP_STRING([--with-fontdir=FONTDIR], [Path to top level dir where fonts are installed (default: ${libdir}/X11/fonts)]), + [ FONTDIR="$withval" ], + [ FONTDIR="${libdir}/X11/fonts" ]) +-DEFAULT_FONT_PATH="${FONTDIR}/misc/,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi/,${FONTDIR}/75dpi/" ++DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled" + case $host_os in + darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; + esac +Index: xorg-server-1.6.3/hw/xfree86/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/Makefile.am ++++ xorg-server-1.6.3/hw/xfree86/Makefile.am +@@ -100,11 +100,11 @@ dist_options_DATA = Options CPP_FILES_FLAGS = \ -DLOCALFONTPATH="\"$(BASE_FONT_PATH)/local\"" \ @@ -42,14 +55,3 @@ index 03c2c3a..843efb7 100644 -DMODULEPATH=\"$(DEFAULT_MODULE_PATH)\" relink: ---- xorg-server-1.4.99.902/configure.ac.orig 2008-06-16 19:17:48.000000000 +0200 -+++ xorg-server-1.4.99.902/configure.ac 2008-06-16 19:24:06.000000000 +0200 -@@ -466,7 +466,7 @@ - AC_ARG_WITH(fontdir, AS_HELP_STRING([--with-fontdir=FONTDIR], [Path to top level dir where fonts are installed (default: ${libdir}/X11/fonts)]), - [ FONTDIR="$withval" ], - [ FONTDIR="${libdir}/X11/fonts" ]) --DEFAULT_FONT_PATH="${FONTDIR}/misc/,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi/,${FONTDIR}/75dpi/" -+DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled" - case $host_os in - darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; - esac diff --git a/bug-197858_dpms.diff b/bug-197858_dpms.diff index ec57cfa..0af19db 100644 --- a/bug-197858_dpms.diff +++ b/bug-197858_dpms.diff @@ -1,42 +1,8 @@ ---- os/WaitFor.c.orig 2007-08-23 21:04:55.000000000 +0200 -+++ os/WaitFor.c 2007-09-29 17:25:11.868664250 +0200 -@@ -141,6 +141,7 @@ static OsTimerPtr timers = NULL; - * For more info on ClientsWithInput, see ReadRequestFromClient(). - * pClientsReady is an array to store ready client->index values into. - *****************/ -+volatile fd_set tmp_set; - - int - WaitForSomething(int *pClientsReady) -@@ -295,10 +296,9 @@ WaitForSomething(int *pClientsReady) - if (expired) - return 0; - } -- } -+ } - else -- { -- fd_set tmp_set; -+ { - - if (*checkForInput[0] == *checkForInput[1]) { - if (timers) -@@ -335,6 +335,12 @@ WaitForSomething(int *pClientsReady) - QueueWorkProc(EstablishNewConnections, NULL, - (pointer)&LastSelectMask); - -+#ifdef DPMSExtension -+ XFD_ANDSET(&tmp_set, &devicesReadable, &EnabledDevices); -+ if (XFD_ANYSET (&tmp_set) && (DPMSPowerLevel != DPMSModeOn)) -+ DPMSSet(serverClient, DPMSModeOn); -+#endif -+ - if (XFD_ANYSET (&devicesReadable) || XFD_ANYSET (&clientsReadable)) - break; - #ifdef WIN32 ---- hw/xfree86/common/xf86Events.c.orig 2007-09-05 23:59:13.000000000 +0200 -+++ hw/xfree86/common/xf86Events.c 2007-09-29 17:29:22.620335250 +0200 -@@ -143,6 +143,7 @@ typedef struct x_IHRec { +Index: hw/xfree86/common/xf86Events.c +=================================================================== +--- hw/xfree86/common/xf86Events.c.orig ++++ hw/xfree86/common/xf86Events.c +@@ -124,6 +124,7 @@ typedef struct x_IHRec { InputHandlerProc ihproc; pointer data; Bool enabled; @@ -44,7 +10,7 @@ struct x_IHRec * next; } IHRec, *IHPtr; -@@ -877,8 +878,12 @@ xf86VTSwitch() +@@ -513,8 +514,12 @@ xf86VTSwitch() for (i = 0; i < xf86NumScreens; i++) xf86Screens[i]->LeaveVT(i, 0); @@ -59,7 +25,7 @@ xf86AccessLeave(); /* We need this here, otherwise */ xf86AccessLeaveState(); /* console won't be restored */ -@@ -916,9 +921,12 @@ xf86VTSwitch() +@@ -552,9 +557,12 @@ xf86VTSwitch() } /* XXX HACK */ xf86ReleaseKeys(inputInfo.keyboard); @@ -75,7 +41,7 @@ xf86UnblockSIGIO(prevSIGIO); } else { -@@ -981,8 +989,12 @@ xf86VTSwitch() +@@ -617,8 +625,12 @@ xf86VTSwitch() /* XXX HACK */ xf86ReleaseKeys(inputInfo.keyboard); @@ -90,7 +56,7 @@ xf86UnblockSIGIO(prevSIGIO); } -@@ -1019,8 +1031,10 @@ xf86AddInputHandler(int fd, InputHandler +@@ -655,8 +667,10 @@ xf86AddInputHandler(int fd, InputHandler { IHPtr ih = addInputHandler(fd, proc, data); @@ -102,3 +68,41 @@ return ih; } +Index: os/WaitFor.c +=================================================================== +--- os/WaitFor.c.orig ++++ os/WaitFor.c +@@ -141,6 +141,7 @@ static OsTimerPtr timers = NULL; + * For more info on ClientsWithInput, see ReadRequestFromClient(). + * pClientsReady is an array to store ready client->index values into. + *****************/ ++volatile fd_set tmp_set; + + int + WaitForSomething(int *pClientsReady) +@@ -278,10 +279,9 @@ WaitForSomething(int *pClientsReady) + if (expired) + return 0; + } +- } ++ } + else +- { +- fd_set tmp_set; ++ { + + if (*checkForInput[0] == *checkForInput[1]) { + if (timers) +@@ -316,6 +316,12 @@ WaitForSomething(int *pClientsReady) + QueueWorkProc(EstablishNewConnections, NULL, + (pointer)&LastSelectMask); + ++#ifdef DPMSExtension ++ XFD_ANDSET(&tmp_set, &devicesReadable, &EnabledDevices); ++ if (XFD_ANYSET (&tmp_set) && (DPMSPowerLevel != DPMSModeOn)) ++ DPMSSet(serverClient, DPMSModeOn); ++#endif ++ + if (XFD_ANYSET (&devicesReadable) || XFD_ANYSET (&clientsReadable)) + break; + /* check here for DDXes that queue events during Block/Wakeup */ diff --git a/bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff b/bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff index f8b5d07..c43eb07 100644 --- a/bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff +++ b/bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff @@ -1,7 +1,7 @@ -diff --git a/hw/xfree86/modes/xf86RandR12.c b/hw/xfree86/modes/xf86RandR12.c -index 6f93a0d..01310e6 100644 ---- a/hw/xfree86/modes/xf86RandR12.c -+++ b/hw/xfree86/modes/xf86RandR12.c +Index: xorg-server-1.6.3/hw/xfree86/modes/xf86RandR12.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/modes/xf86RandR12.c ++++ xorg-server-1.6.3/hw/xfree86/modes/xf86RandR12.c @@ -55,6 +55,13 @@ typedef struct _xf86RandR12Info { int pointerY; Rotation rotation; /* current mode */ @@ -16,7 +16,7 @@ index 6f93a0d..01310e6 100644 } XF86RandRInfoRec, *XF86RandRInfoPtr; #ifdef RANDR_12_INTERFACE -@@ -1646,10 +1653,25 @@ xf86RandR13SetPanning (ScreenPtr pScreen, +@@ -1648,10 +1655,25 @@ xf86RandR13SetPanning (ScreenPtr } static Bool @@ -42,7 +42,7 @@ index 6f93a0d..01310e6 100644 rp->rrGetInfo = xf86RandR12GetInfo12; rp->rrScreenSetSize = xf86RandR12ScreenSetSize; -@@ -1665,6 +1687,10 @@ xf86RandR12Init12 (ScreenPtr pScreen) +@@ -1667,6 +1689,10 @@ xf86RandR12Init12 (ScreenPtr pScreen) rp->rrModeDestroy = xf86RandR12ModeDestroy; rp->rrSetConfig = NULL; pScrn->PointerMoved = xf86RandR12PointerMoved; diff --git a/bug474071-fix1.diff b/bug474071-fix1.diff index 8bab8af..5232474 100644 --- a/bug474071-fix1.diff +++ b/bug474071-fix1.diff @@ -1,6 +1,8 @@ ---- linuxPci.c.orig 2009-02-19 16:50:50.169751885 +0100 -+++ linuxPci.c 2009-02-19 16:55:59.991516595 +0100 -@@ -291,7 +291,7 @@ +Index: linuxPci.c +=================================================================== +--- linuxPci.c.orig ++++ linuxPci.c +@@ -274,7 +274,7 @@ get_parent_bridge(struct pci_device *dev struct pci_id_match bridge_match = { PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, PCI_MATCH_ANY, (PCI_CLASS_BRIDGE << 16) | (PCI_SUBCLASS_BRIDGE_PCI << 8), @@ -9,7 +11,7 @@ }; struct pci_device *bridge; struct pci_device_iterator *iter; -@@ -526,7 +526,6 @@ +@@ -512,7 +512,6 @@ IOADDRESS xf86MapLegacyIO(struct pci_device *dev) { const int domain = dev->domain; @@ -17,7 +19,7 @@ int fd; if (domain >= MAX_DOMAINS) -@@ -534,9 +533,11 @@ +@@ -520,9 +519,11 @@ xf86MapLegacyIO(struct pci_device *dev) if (DomainMmappedIO[domain] == NULL) { /* Permanently map all of I/O space */ diff --git a/cache-xkbcomp-output-for-fast-start-up.patch b/cache-xkbcomp-output-for-fast-start-up.patch index 86a6f44..0543219 100644 --- a/cache-xkbcomp-output-for-fast-start-up.patch +++ b/cache-xkbcomp-output-for-fast-start-up.patch @@ -14,11 +14,11 @@ Signed-off-by: Yan Li xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++--------- 3 files changed, 164 insertions(+), 42 deletions(-) -diff --git a/configure.ac b/configure.ac -index 4c4c797..7a5020a 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -476,9 +476,9 @@ AC_ARG_WITH(default-font-path, AS_HELP_STRING([--with-default-font-path=PATH], [ +Index: xorg-server-1.6.3/configure.ac +=================================================================== +--- xorg-server-1.6.3.orig/configure.ac ++++ xorg-server-1.6.3/configure.ac +@@ -476,9 +476,9 @@ AC_ARG_WITH(default-font-path, AS_HELP_S AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]), [ XKBPATH="$withval" ], [ XKBPATH="${datadir}/X11/xkb" ]) @@ -30,7 +30,7 @@ index 4c4c797..7a5020a 100644 AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH], [Directory where ancillary server config files are installed (default: ${libdir}/xorg)]), [ SERVERCONFIG="$withval" ], -@@ -1757,7 +1757,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir, [Path to XKB bin dir]) +@@ -1807,7 +1807,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir, XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1` if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then @@ -39,11 +39,11 @@ index 4c4c797..7a5020a 100644 fi # XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed -diff --git a/xkb/README.compiled b/xkb/README.compiled -index 71caa2f..a4a2ae0 100644 ---- a/xkb/README.compiled -+++ b/xkb/README.compiled -@@ -4,10 +4,10 @@ current keymap and/or any scratch keymaps used by clients. The X server +Index: xorg-server-1.6.3/xkb/README.compiled +=================================================================== +--- xorg-server-1.6.3.orig/xkb/README.compiled ++++ xorg-server-1.6.3/xkb/README.compiled +@@ -4,10 +4,10 @@ current keymap and/or any scratch keymap or some other tool might destroy or replace the files in this directory, so it is not a safe place to store compiled keymaps for long periods of time. The default keymap for any server is usually stored in: @@ -58,10 +58,10 @@ index 71caa2f..a4a2ae0 100644 Unless the X server is modified, sharing this directory between servers on different hosts could cause problems. -diff --git a/xkb/ddxLoad.c b/xkb/ddxLoad.c -index 4d5dfb6..60a68af 100644 ---- a/xkb/ddxLoad.c -+++ b/xkb/ddxLoad.c +Index: xorg-server-1.6.3/xkb/ddxLoad.c +=================================================================== +--- xorg-server-1.6.3.orig/xkb/ddxLoad.c ++++ xorg-server-1.6.3/xkb/ddxLoad.c @@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE. #include #endif @@ -147,7 +147,7 @@ index 4d5dfb6..60a68af 100644 XkbDDXCompileKeymapByNames( XkbDescPtr xkb, XkbComponentNamesPtr names, unsigned want, -@@ -187,7 +221,11 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, +@@ -187,7 +221,11 @@ XkbDDXCompileKeymapByNames( XkbDescPtr int nameRtrnLen) { FILE * out; @@ -160,7 +160,7 @@ index 4d5dfb6..60a68af 100644 const char *emptystring = ""; const char *xkbbasedirflag = emptystring; -@@ -198,16 +236,70 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, +@@ -198,16 +236,70 @@ XkbDDXCompileKeymapByNames( XkbDescPtr /* WIN32 has no popen. The input must be stored in a file which is used as input for xkbcomp. xkbcomp does not read from stdin. */ char tmpname[PATH_MAX]; @@ -169,9 +169,8 @@ index 4d5dfb6..60a68af 100644 #else - const char *xkmfile = "-"; + const char *xkbfile = "-"; - #endif - -- snprintf(keymap, sizeof(keymap), "server-%s", display); ++#endif ++ + /* Write keymap source (xkbfile) to memory buffer `xkbKeyMapBuf', + of which SHA1 is generated and used as result xkm file name */ + memset(xkbKeyMapBuf, 0, sizeof(xkbKeyMapBuf)); @@ -191,12 +190,13 @@ index 4d5dfb6..60a68af 100644 + ErrorF("[xkb] XkbDDXCompileKeymapByNames compiling keymap:\n"); + fputs(xkbKeyMapBuf, stderr); + } -+#endif + #endif + if (!ret) { + ErrorF("[xkb] Generating XKB Keymap failed, giving up compiling keymap\n"); + return False; + } -+ + +- snprintf(keymap, sizeof(keymap), "server-%s", display); + DebugF("[xkb] computing SHA1 of keymap\n"); + if (Success == Sha1Asc(sha1Asc, xkbKeyMapBuf)) { + snprintf(xkmfile, sizeof(xkmfile), "server-%s", sha1Asc); @@ -235,7 +235,7 @@ index 4d5dfb6..60a68af 100644 #ifdef WIN32 strcpy(tmpname, Win32TempDir()); strcat(tmpname, "\\xkb_XXXXXX"); -@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, +@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr } } @@ -269,7 +269,7 @@ index 4d5dfb6..60a68af 100644 #ifndef WIN32 out= Popen(buf,"w"); #else -@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, +@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr #endif if (out!=NULL) { @@ -326,7 +326,7 @@ index 4d5dfb6..60a68af 100644 #ifdef WIN32 /* remove the temporary file */ unlink(tmpname); -@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr xkb, +@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr } if (nameRtrn) nameRtrn[0]= '\0'; @@ -353,6 +353,3 @@ index 4d5dfb6..60a68af 100644 return (need|want)&(~missing); } --- -1.5.6.5 - diff --git a/confine_to_shape.diff b/confine_to_shape.diff index 4b8dbdf..ace3987 100644 --- a/confine_to_shape.diff +++ b/confine_to_shape.diff @@ -1,6 +1,8 @@ ---- dix/events.c.orig 2009-02-25 20:12:10.000000000 +0100 -+++ dix/events.c 2009-02-27 16:53:47.000000000 +0100 -@@ -786,37 +786,80 @@ ConfineToShape(DeviceIntPtr pDev, Region +Index: dix/events.c +=================================================================== +--- dix/events.c.orig ++++ dix/events.c +@@ -803,37 +803,80 @@ ConfineToShape(DeviceIntPtr pDev, Region { BoxRec box; int x = *px, y = *py; diff --git a/disable-fbblt-opt.diff b/disable-fbblt-opt.diff index ce4d862..77597be 100644 --- a/disable-fbblt-opt.diff +++ b/disable-fbblt-opt.diff @@ -1,6 +1,8 @@ ---- fb/fbblt.c.orig 2006-09-13 15:01:32.000000000 +0200 -+++ fb/fbblt.c 2006-09-13 15:05:14.000000000 +0200 -@@ -78,6 +78,11 @@ fbBlt (FbBits *srcLine, +Index: fb/fbblt.c +=================================================================== +--- fb/fbblt.c.orig ++++ fb/fbblt.c +@@ -76,6 +76,11 @@ fbBlt (FbBits *srcLine, } #endif @@ -12,7 +14,7 @@ if (alu == GXcopy && pm == FB_ALLONES && !reverse && !(srcX & 7) && !(dstX & 7) && !(width & 7)) { int i; -@@ -99,6 +104,7 @@ fbBlt (FbBits *srcLine, +@@ -97,6 +102,7 @@ fbBlt (FbBits *srcLine, return; } diff --git a/dpms_screensaver.diff b/dpms_screensaver.diff index 50007e4..1277a49 100644 --- a/dpms_screensaver.diff +++ b/dpms_screensaver.diff @@ -1,7 +1,7 @@ -diff --git a/hw/xfree86/common/xf86DPMS.c b/hw/xfree86/common/xf86DPMS.c -index 5ee5e24..889e05d 100644 ---- a/hw/xfree86/common/xf86DPMS.c -+++ b/hw/xfree86/common/xf86DPMS.c +Index: xorg-server-1.6.3/hw/xfree86/common/xf86DPMS.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86DPMS.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86DPMS.c @@ -160,7 +160,8 @@ DPMSSet(ClientPtr client, int level) rc = dixSaveScreens(client, SCREEN_SAVER_FORCER, ScreenSaverActive); if (rc != Success) diff --git a/driver-autoconfig.diff b/driver-autoconfig.diff index e677373..730706c 100644 --- a/driver-autoconfig.diff +++ b/driver-autoconfig.diff @@ -1,5 +1,7 @@ ---- hw/xfree86/common/xf86AutoConfig.c.old 2009-06-05 20:48:39.000000000 +0000 -+++ hw/xfree86/common/xf86AutoConfig.c 2009-06-05 21:38:15.000000000 +0000 +Index: hw/xfree86/common/xf86AutoConfig.c +=================================================================== +--- hw/xfree86/common/xf86AutoConfig.c.orig ++++ hw/xfree86/common/xf86AutoConfig.c @@ -165,7 +165,11 @@ videoPtrToDriverList(struct pci_device * case 0x1142: driverList[0] = "apm"; break; case 0xedd8: driverList[0] = "ark"; break; @@ -13,7 +15,7 @@ case 0x102c: driverList[0] = "chips"; break; case 0x1013: driverList[0] = "cirrus"; break; case 0x8086: -@@ -182,7 +186,12 @@ videoPtrToDriverList(struct pci_device * +@@ -179,7 +183,12 @@ videoPtrToDriverList(struct pci_device * case 0x102b: driverList[0] = "mga"; break; case 0x10c8: driverList[0] = "neomagic"; break; case 0x105d: driverList[0] = "i128"; break; @@ -27,7 +29,7 @@ case 0x1163: driverList[0] = "rendition"; break; case 0x5333: switch (dev->device_id) -@@ -208,7 +217,11 @@ videoPtrToDriverList(struct pci_device * +@@ -205,7 +214,11 @@ videoPtrToDriverList(struct pci_device * case 0x3d3d: driverList[0] = "glint"; break; case 0x1023: driverList[0] = "trident"; break; case 0x100c: driverList[0] = "tseng"; break; @@ -40,7 +42,7 @@ case 0x15ad: driverList[0] = "vmware"; break; case 0x18ca: if (dev->device_id == 0x47) -@@ -216,6 +229,11 @@ videoPtrToDriverList(struct pci_device * +@@ -213,6 +226,11 @@ videoPtrToDriverList(struct pci_device * else driverList[0] = "xgi"; break; diff --git a/edit_data_sanity_check.diff b/edit_data_sanity_check.diff index 2dc203b..e183c15 100644 --- a/edit_data_sanity_check.diff +++ b/edit_data_sanity_check.diff @@ -1,8 +1,8 @@ -diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c -index d375da8..aead061 100644 ---- a/hw/xfree86/modes/xf86Crtc.c -+++ b/hw/xfree86/modes/xf86Crtc.c -@@ -2097,7 +2097,13 @@ xf86OutputSetEDID (xf86OutputPtr output, +Index: xorg-server-1.6.3/hw/xfree86/modes/xf86Crtc.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/modes/xf86Crtc.c ++++ xorg-server-1.6.3/hw/xfree86/modes/xf86Crtc.c +@@ -2800,7 +2800,13 @@ xf86OutputSetEDID (xf86OutputPtr output, for (i = 0; i < 4; i++) { if (edid_mon->det_mon[i].type == DT && edid_mon->det_mon[i].section.d_timings.h_size != 0 && diff --git a/events.diff b/events.diff index a337fe4..cb35399 100644 --- a/events.diff +++ b/events.diff @@ -1,6 +1,8 @@ ---- xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c.orig 2008-04-21 19:26:30.000000000 +0000 -+++ xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c 2008-04-21 19:47:54.000000000 +0000 -@@ -884,22 +884,26 @@ +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Events.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Events.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Events.c +@@ -518,22 +518,26 @@ xf86VTSwitch() * Keep the order: Disable Device > LeaveVT * EnterVT > EnableDevice */ @@ -35,7 +37,7 @@ xf86AccessLeave(); /* We need this here, otherwise */ xf86AccessLeaveState(); /* console won't be restored */ -@@ -929,14 +933,10 @@ +@@ -563,14 +567,10 @@ xf86VTSwitch() pInfo = xf86InputDevs; while (pInfo) { @@ -51,7 +53,7 @@ for (ih = InputHandlers; ih; ih = ih->next) { if (ih->is_input) xf86EnableInputHandler(ih); -@@ -946,6 +946,17 @@ +@@ -580,6 +580,17 @@ xf86VTSwitch() xf86UnblockSIGIO(prevSIGIO); } else { @@ -69,7 +71,7 @@ #ifdef XF86PM if (xf86OSPMClose) xf86OSPMClose(); -@@ -996,14 +1007,10 @@ +@@ -630,14 +641,10 @@ xf86VTSwitch() pInfo = xf86InputDevs; while (pInfo) { diff --git a/exa-greedy.diff b/exa-greedy.diff index 14991ac..744ca21 100644 --- a/exa-greedy.diff +++ b/exa-greedy.diff @@ -1,8 +1,8 @@ -diff --git a/exa/exa_migration.c b/exa/exa_migration.c -index 3c79f68..1332f42 100644 ---- a/exa/exa_migration.c -+++ b/exa/exa_migration.c -@@ -468,7 +503,11 @@ exaMigrateTowardFb (ExaMigrationPtr migrate) +Index: xorg-server-1.6.3/exa/exa_migration.c +=================================================================== +--- xorg-server-1.6.3.orig/exa/exa_migration.c ++++ xorg-server-1.6.3/exa/exa_migration.c +@@ -463,7 +463,11 @@ exaMigrateTowardFb (ExaMigrationPtr migr exaDoMoveInPixmap(migrate); } @@ -15,7 +15,7 @@ index 3c79f68..1332f42 100644 } /** -@@ -501,6 +540,12 @@ exaMigrateTowardSys (ExaMigrationPtr migrate) +@@ -496,6 +500,12 @@ exaMigrateTowardSys (ExaMigrationPtr mig if (pExaPixmap->score <= EXA_PIXMAP_SCORE_MOVE_OUT && pExaPixmap->area) exaDoMoveOutPixmap(migrate); diff --git a/fbdev_fallback_fail_fix.diff b/fbdev_fallback_fail_fix.diff index 4d8beee..d167ace 100644 --- a/fbdev_fallback_fail_fix.diff +++ b/fbdev_fallback_fail_fix.diff @@ -1,7 +1,7 @@ -diff --git a/hw/xfree86/common/xf86Bus.c b/hw/xfree86/common/xf86Bus.c -index b94d500..e624a17 100644 ---- a/hw/xfree86/common/xf86Bus.c -+++ b/hw/xfree86/common/xf86Bus.c +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Bus.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Bus.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Bus.c @@ -429,7 +429,7 @@ xf86GetEntityInfo(int entityIndex) EntityInfoPtr pEnt; int i; @@ -32,11 +32,11 @@ index b94d500..e624a17 100644 /* * xf86PostProbe() -- Allocate all non conflicting resources * This function gets called by xf86Init(). -diff --git a/hw/xfree86/common/xf86Priv.h b/hw/xfree86/common/xf86Priv.h -index 41ca8f5..80d4d00 100644 ---- a/hw/xfree86/common/xf86Priv.h -+++ b/hw/xfree86/common/xf86Priv.h -@@ -123,6 +123,7 @@ extern RootWinPropPtr *xf86RegisteredPropertiesTable; +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Priv.h +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Priv.h ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Priv.h +@@ -123,6 +123,7 @@ extern RootWinPropPtr *xf86RegisteredPro /* xf86Bus.c */ @@ -44,11 +44,11 @@ index 41ca8f5..80d4d00 100644 void xf86BusProbe(void); void xf86ChangeBusIndex(int oldIndex, int newIndex); void xf86AccessInit(void); -diff --git a/hw/xfree86/common/xf86fbBus.c b/hw/xfree86/common/xf86fbBus.c -index 102f6b1..1c99175 100644 ---- a/hw/xfree86/common/xf86fbBus.c -+++ b/hw/xfree86/common/xf86fbBus.c -@@ -58,7 +58,10 @@ xf86ClaimFbSlot(DriverPtr drvp, int chipset, GDevPtr dev, Bool active) +Index: xorg-server-1.6.3/hw/xfree86/common/xf86fbBus.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86fbBus.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86fbBus.c +@@ -58,7 +58,10 @@ xf86ClaimFbSlot(DriverPtr drvp, int chip { EntityPtr p; int num; diff --git a/fbdevhw.diff b/fbdevhw.diff index c2fb32c..076ad55 100644 --- a/fbdevhw.diff +++ b/fbdevhw.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/fbdevhw/fbdevhw.c.orig 2008-04-20 03:06:32.000000000 +0000 -+++ hw/xfree86/fbdevhw/fbdevhw.c 2008-04-20 03:30:00.000000000 +0000 -@@ -923,9 +923,10 @@ fbdevHWDPMSSet(ScrnInfoPtr pScrn, int mo +Index: hw/xfree86/fbdevhw/fbdevhw.c +=================================================================== +--- hw/xfree86/fbdevhw/fbdevhw.c.orig ++++ hw/xfree86/fbdevhw/fbdevhw.c +@@ -964,9 +964,10 @@ fbdevHWDPMSSet(ScrnInfoPtr pScrn, int mo return; } @@ -13,7 +15,7 @@ } Bool -@@ -941,9 +942,10 @@ fbdevHWSaveScreen(ScreenPtr pScreen, int +@@ -982,9 +983,10 @@ fbdevHWSaveScreen(ScreenPtr pScreen, int unblank = xf86IsUnblank(mode); diff --git a/fix-dpi-values.diff b/fix-dpi-values.diff index 30dfb94..03bcbb2 100644 --- a/fix-dpi-values.diff +++ b/fix-dpi-values.diff @@ -1,7 +1,8 @@ -diff -u -p ../../../../xorg-server-1.4.0.90.orig/hw/xfree86/common//xf86Helper.c ./xf86Helper.c ---- ../../../../xorg-server-1.4.0.90.orig/hw/xfree86/common//xf86Helper.c 2008-05-26 16:53:50.000000000 +0000 -+++ hw/xfree86/common/xf86Helper.c 2008-05-26 17:09:52.000000000 +0000 -@@ -1017,12 +1017,22 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int +Index: hw/xfree86/common/xf86Helper.c +=================================================================== +--- hw/xfree86/common/xf86Helper.c.orig ++++ hw/xfree86/common/xf86Helper.c +@@ -997,12 +997,22 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int } else if (pScrn->widthmm > 0 || pScrn->heightmm > 0) { from = X_CONFIG; if (pScrn->widthmm > 0) { @@ -28,7 +29,7 @@ diff -u -p ../../../../xorg-server-1.4.0.90.orig/hw/xfree86/common//xf86Helper.c } if (pScrn->xDpi > 0 && pScrn->yDpi <= 0) pScrn->yDpi = pScrn->xDpi; -@@ -1057,12 +1067,22 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int +@@ -1037,12 +1047,22 @@ xf86SetDpi(ScrnInfoPtr pScrn, int x, int pScrn->widthmm = ddcWidthmm; pScrn->heightmm = ddcHeightmm; if (pScrn->widthmm > 0) { diff --git a/fixed-SYNC-extension-trigger-BlockHandler-test.diff b/fixed-SYNC-extension-trigger-BlockHandler-test.diff index 0dd5d9c..be23ac0 100644 --- a/fixed-SYNC-extension-trigger-BlockHandler-test.diff +++ b/fixed-SYNC-extension-trigger-BlockHandler-test.diff @@ -24,8 +24,10 @@ Subject: [PATCH] Fixed SYNC extension trigger BlockHandler test. idle counter to trigger. This fixes a problem introduced with commit 1f4fb022 where an idle counter expires unnoticed. ---- xorg-server-1.6.0/Xext/sync.c.orig 2009-02-25 20:12:10.000000000 +0100 -+++ xorg-server-1.6.0/Xext/sync.c 2009-03-23 17:17:13.000000000 +0100 +Index: xorg-server-1.6.3/Xext/sync.c +=================================================================== +--- xorg-server-1.6.3.orig/Xext/sync.c ++++ xorg-server-1.6.3/Xext/sync.c @@ -222,8 +222,7 @@ SyncCreateCounter( ); diff --git a/fpic.diff b/fpic.diff index e0041dd..5f037dc 100644 --- a/fpic.diff +++ b/fpic.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/parser/Makefile.am.orig 2006-06-30 21:15:50.231016743 +0200 -+++ hw/xfree86/parser/Makefile.am 2006-06-30 21:16:12.207190774 +0200 -@@ -23,7 +23,7 @@ +Index: hw/xfree86/parser/Makefile.am +=================================================================== +--- hw/xfree86/parser/Makefile.am.orig ++++ hw/xfree86/parser/Makefile.am +@@ -22,7 +22,7 @@ libxf86config_a_SOURCES = \ DRI.c \ Extensions.c diff --git a/keyrelease-1.5.2.diff b/keyrelease-1.5.2.diff index 0153638..e6a2477 100644 --- a/keyrelease-1.5.2.diff +++ b/keyrelease-1.5.2.diff @@ -1,8 +1,8 @@ -Index: xorg-server-1.5.2/xkb/xkbPrKeyEv.c +Index: xorg-server-1.6.3/xkb/xkbPrKeyEv.c =================================================================== ---- xorg-server-1.5.2.orig/xkb/xkbPrKeyEv.c -+++ xorg-server-1.5.2/xkb/xkbPrKeyEv.c -@@ -96,17 +96,6 @@ int xiEvent; +--- xorg-server-1.6.3.orig/xkb/xkbPrKeyEv.c ++++ xorg-server-1.6.3/xkb/xkbPrKeyEv.c +@@ -95,17 +95,6 @@ int xiEvent; else if ((xE->u.u.type==KeyRelease || xE->u.u.type == DeviceKeyRelease) && (!(keyc->down[key>>3]&(1<<(key&7))))) { diff --git a/libdri_noPanoramiXExtension_symbol.patch b/libdri_noPanoramiXExtension_symbol.patch index ec8519c..77e6cf5 100644 --- a/libdri_noPanoramiXExtension_symbol.patch +++ b/libdri_noPanoramiXExtension_symbol.patch @@ -1,7 +1,8 @@ -diff -urN xorg-server-1.5.99.3/hw/xfree86/dri/dri.c xorg-server-1.5.99.3.new/hw/xfree86/dri/dri.c ---- xorg-server-1.5.99.3/hw/xfree86/dri/dri.c 2008-12-03 15:07:38.000000000 +0800 -+++ xorg-server-1.5.99.3.new/hw/xfree86/dri/dri.c 2008-12-15 15:51:17.000000000 +0800 -@@ -75,7 +75,7 @@ +Index: xorg-server-1.6.3/hw/xfree86/dri/dri.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/dri/dri.c ++++ xorg-server-1.6.3/hw/xfree86/dri/dri.c +@@ -75,7 +75,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN #define PCI_BUS_NO_DOMAIN(bus) ((bus) & 0xffu) #if !defined(PANORAMIX) diff --git a/libdrm.diff b/libdrm.diff index 9051e71..4c912a0 100644 --- a/libdrm.diff +++ b/libdrm.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/common/xf86Helper.c.orig 2006-12-13 16:21:35.000000000 +0100 -+++ hw/xfree86/common/xf86Helper.c 2006-12-13 18:23:53.000000000 +0100 -@@ -2394,6 +2394,13 @@ +Index: hw/xfree86/common/xf86Helper.c +=================================================================== +--- hw/xfree86/common/xf86Helper.c.orig ++++ hw/xfree86/common/xf86Helper.c +@@ -2251,6 +2251,13 @@ xf86LoadSubModule(ScrnInfoPtr pScrn, con &errmaj, &errmin); if (!ret) LoaderErrorMsg(pScrn->name, name, errmaj, errmin); diff --git a/loadmod-bug197195.diff b/loadmod-bug197195.diff index 68635ea..897c759 100644 --- a/loadmod-bug197195.diff +++ b/loadmod-bug197195.diff @@ -1,8 +1,8 @@ -diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c -index 12f5dc9..c84529f 100644 ---- a/hw/xfree86/loader/loadmod.c -+++ b/hw/xfree86/loader/loadmod.c -@@ -408,8 +408,8 @@ FindModuleInSubdir(const char *dirpath, +Index: xorg-server-1.6.3/hw/xfree86/loader/loadmod.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/loader/loadmod.c ++++ xorg-server-1.6.3/hw/xfree86/loader/loadmod.c +@@ -401,8 +401,8 @@ FindModuleInSubdir(const char *dirpath, while ((direntry = readdir(dir))) { if (direntry->d_name[0] == '.') continue; diff --git a/moblin-hw-xf86-modes-Set-crtc-mode-rotation-transform-befo.patch b/moblin-hw-xf86-modes-Set-crtc-mode-rotation-transform-befo.patch new file mode 100644 index 0000000..d5327f1 --- /dev/null +++ b/moblin-hw-xf86-modes-Set-crtc-mode-rotation-transform-befo.patch @@ -0,0 +1,51 @@ +From 6f59a8160042ea145514fdcb410f17f33fd437c2 Mon Sep 17 00:00:00 2001 +From: Benjamin Defnet +Date: Mon, 8 Jun 2009 21:45:42 -0700 +Subject: hw/xf86/modes: Set crtc mode/rotation/transform before calling set_mode_major + +This moves code out of each implementation of set_mode_major and back into +the X server. The real feature here is that the transform is now available +in the crtc for use by either xf86CrtcRotate or whatever the driver wants to +do. Without this change, the transform was lost for drivers providing the +set_mode_major interface. + +Note that users of this API will want to stop smashing the transformPresent +field, and could also stop setting mode/x/y/rotation for new enough X servers, +but there's no reason to make that change as it will break things when +running against older X servers. + +Signed-off-by: Keith Packard +Acked-by: Daniel Stone +--- + hw/xfree86/modes/xf86Crtc.c | 8 +++++--- + 1 files changed, 5 insertions(+), 3 deletions(-) + +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index b40e096..585f84d 100644 +--- a/hw/xfree86/modes/xf86Crtc.c ++++ b/hw/xfree86/modes/xf86Crtc.c +@@ -266,9 +266,6 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotati + RRTransformRec saved_transform; + Bool saved_transform_present; + +- if (crtc->funcs->set_mode_major) +- return crtc->funcs->set_mode_major(crtc, mode, rotation, x, y); +- + crtc->enabled = xf86CrtcInUse (crtc); + + /* We only hit this if someone explicitly sends a "disabled" modeset. */ +@@ -306,6 +303,11 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotati + } else + crtc->transformPresent = FALSE; + ++ if (crtc->funcs->set_mode_major) { ++ ret = crtc->funcs->set_mode_major(crtc, mode, rotation, x, y); ++ goto done; ++ } ++ + /* Pass our mode to the outputs and the CRTC to give them a chance to + * adjust it according to limitations or output properties, and also + * a chance to reject the mode entirely. +-- +1.6.1.3 + diff --git a/moblin-randr-fix-operation-order-so-that-rotation-transfor.patch b/moblin-randr-fix-operation-order-so-that-rotation-transfor.patch new file mode 100644 index 0000000..3738d61 --- /dev/null +++ b/moblin-randr-fix-operation-order-so-that-rotation-transfor.patch @@ -0,0 +1,35 @@ +From b2bf67b61c564a4b92a429ca9ad455403161f33a Mon Sep 17 00:00:00 2001 +From: Benjamin Defnet +Date: Wed, 10 Jun 2009 21:35:48 -0700 +Subject: randr: fix operation order so that rotation+transform works + +The matrix multiply to combine rotation and projective transforms was being +done in the wrong order. + +Signed-off-by: Keith Packard +Signed-off-by: root +--- + randr/rrtransform.c | 6 +++--- + 1 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/randr/rrtransform.c b/randr/rrtransform.c +index 8bdff5a..06f6298 100644 +--- a/randr/rrtransform.c ++++ b/randr/rrtransform.c +@@ -251,10 +251,10 @@ RRTransformCompute (int x, + #ifdef RANDR_12_INTERFACE + if (rr_transform) + { +- if (!pixman_transform_multiply (transform, transform, &rr_transform->transform)) ++ if (!pixman_transform_multiply (transform, &rr_transform->transform, transform)) + overflow = TRUE; +- pixman_f_transform_multiply (f_transform, f_transform, &rr_transform->f_transform); +- pixman_f_transform_multiply (f_inverse, &rr_transform->f_inverse, f_inverse); ++ pixman_f_transform_multiply (f_transform, &rr_transform->f_transform, f_transform); ++ pixman_f_transform_multiply (f_inverse, f_inverse, &rr_transform->f_inverse); + } + #endif + /* +-- +1.6.1.3 + diff --git a/moblin-xfree86-move-didLock-assignment-down-to-where-the-f.patch b/moblin-xfree86-move-didLock-assignment-down-to-where-the-f.patch new file mode 100644 index 0000000..0ad9c06 --- /dev/null +++ b/moblin-xfree86-move-didLock-assignment-down-to-where-the-f.patch @@ -0,0 +1,38 @@ +From 0de58c88aba7ddd69b04f24ab5b2967c359aa69e Mon Sep 17 00:00:00 2001 +From: Dave Airlie +Date: Thu, 11 Jun 2009 14:21:53 +1000 +Subject: xfree86: move didLock assignment down to where the function pointer is valid. + +crtc->funcs->lock is NULL, so it's no use calling it here. Move it down so +it's actually defined before we use it. + +Introduced with 6f59a8160042ea145514fdcb410f17f33fd437c2. + +Tested-by: Peter Hutterer +--- + hw/xfree86/modes/xf86Crtc.c | 2 +- + 1 files changed, 1 insertions(+), 1 deletions(-) + +diff --git a/hw/xfree86/modes/xf86Crtc.c b/hw/xfree86/modes/xf86Crtc.c +index 585f84d..51fe115 100644 +--- a/hw/xfree86/modes/xf86Crtc.c ++++ b/hw/xfree86/modes/xf86Crtc.c +@@ -278,7 +278,6 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotati + + adjusted_mode = xf86DuplicateMode(mode); + +- didLock = crtc->funcs->lock (crtc); + + saved_mode = crtc->mode; + saved_x = crtc->x; +@@ -308,6 +307,7 @@ xf86CrtcSetModeTransform (xf86CrtcPtr crtc, DisplayModePtr mode, Rotation rotati + goto done; + } + ++ didLock = crtc->funcs->lock (crtc); + /* Pass our mode to the outputs and the CRTC to give them a chance to + * adjust it according to limitations or output properties, and also + * a chance to reject the mode entirely. +-- +1.6.1.3 + diff --git a/moblin-xorg-x11-nonroot-vesa.patch b/moblin-xorg-x11-nonroot-vesa.patch new file mode 100644 index 0000000..79ed840 --- /dev/null +++ b/moblin-xorg-x11-nonroot-vesa.patch @@ -0,0 +1,14 @@ +Index: xorg-server-1.6.3/hw/xfree86/common/xf86AutoConfig.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86AutoConfig.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86AutoConfig.c +@@ -545,7 +545,8 @@ listPossibleVideoDrivers(char *matches[] + #if !defined(__linux__) && defined(__sparc__) + matches[i++] = xnfstrdup("wsfb"); + #else +- matches[i++] = xnfstrdup("vesa"); ++ if (geteuid() == 0) ++ matches[i++] = xnfstrdup("vesa"); + #endif + } + } diff --git a/moblin-xserver-no-root-2.patch b/moblin-xserver-no-root-2.patch new file mode 100644 index 0000000..73091aa --- /dev/null +++ b/moblin-xserver-no-root-2.patch @@ -0,0 +1,105 @@ +Index: xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_init.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/os-support/linux/lnx_init.c ++++ xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_init.c +@@ -49,6 +49,7 @@ static Bool KeepTty = FALSE; + static int VTnum = -1; + static Bool VTSwitch = TRUE; + static Bool ShareVTs = FALSE; ++Bool NoHwAccess = FALSE; + static int activeVT = -1; + + static int vtPermSave[4]; +@@ -80,9 +81,11 @@ saveVtPerms(void) + static void + restoreVtPerms(void) + { +- /* Set the terminal permissions back to before we started. */ +- chown("/dev/tty0", vtPermSave[0], vtPermSave[1]); +- chown(vtname, vtPermSave[2], vtPermSave[3]); ++ if (geteuid() == 0) { ++ /* Set the terminal permissions back to before we started. */ ++ (void)chown("/dev/tty0", vtPermSave[0], vtPermSave[1]); ++ (void)chown(vtname, vtPermSave[2], vtPermSave[3]); ++ } + } + + static void *console_handler; +@@ -210,20 +213,22 @@ xf86OpenConsole(void) + xf86Msg(X_WARNING, + "xf86OpenConsole: Could not save ownership of VT\n"); + +- /* change ownership of the vt */ +- if (chown(vtname, getuid(), getgid()) < 0) +- xf86Msg(X_WARNING,"xf86OpenConsole: chown %s failed: %s\n", +- vtname, strerror(errno)); +- +- /* +- * the current VT device we're running on is not "console", we want +- * to grab all consoles too +- * +- * Why is this needed?? +- */ +- if (chown("/dev/tty0", getuid(), getgid()) < 0) +- xf86Msg(X_WARNING,"xf86OpenConsole: chown /dev/tty0 failed: %s\n", +- strerror(errno)); ++ if (geteuid() == 0) { ++ /* change ownership of the vt */ ++ if (chown(vtname, getuid(), getgid()) < 0) ++ xf86Msg(X_WARNING,"xf86OpenConsole: chown %s failed: %s\n", ++ vtname, strerror(errno)); ++ ++ /* ++ * the current VT device we're running on is not ++ * "console", we want to grab all consoles too ++ * ++ * Why is this needed?? ++ */ ++ if (chown("/dev/tty0", getuid(), getgid()) < 0) ++ xf86Msg(X_WARNING,"xf86OpenConsole: chown /dev/tty0 failed: %s\n", ++ strerror(errno)); ++ } + } + + /* +@@ -434,6 +439,11 @@ xf86ProcessArgument(int argc, char *argv + ShareVTs = TRUE; + return(1); + } ++ if (!strcmp(argv[i], "-nohwaccess")) ++ { ++ NoHwAccess = TRUE; ++ return(1); ++ } + if ((argv[i][0] == 'v') && (argv[i][1] == 't')) + { + if (sscanf(argv[i], "vt%2d", &VTnum) == 0) +@@ -455,5 +465,6 @@ xf86UseMsg() + ErrorF("don't detach controlling tty (for debugging only)\n"); + ErrorF("-novtswitch don't immediately switch to new VT\n"); + ErrorF("-sharevts share VTs with another X server\n"); ++ ErrorF("-nohwaccess don't access hardware ports directly\n"); + return; + } +Index: xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_video.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/os-support/linux/lnx_video.c ++++ xorg-server-1.6.3/hw/xfree86/os-support/linux/lnx_video.c +@@ -51,6 +51,7 @@ + #define MAP_FAILED ((void *)-1) + #endif + ++extern Bool NoHwAccess; + static Bool ExtendedEnabled = FALSE; + + #ifdef __ia64__ +@@ -509,6 +510,9 @@ xf86EnableIO(void) + int fd; + unsigned int ioBase_phys; + #endif ++ /* Fake it... */ ++ if (NoHwAccess) ++ return TRUE; + + if (ExtendedEnabled) + return TRUE; diff --git a/mouse.diff b/mouse.diff index 51fdbc2..bbbd7b4 100644 --- a/mouse.diff +++ b/mouse.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/common/xf86Configure.c.orig 2006-10-14 10:24:36.000000000 +0000 -+++ hw/xfree86/common/xf86Configure.c 2006-10-14 10:23:39.000000000 +0000 -@@ -88,8 +88,8 @@ +Index: hw/xfree86/common/xf86Configure.c +=================================================================== +--- hw/xfree86/common/xf86Configure.c.orig ++++ hw/xfree86/common/xf86Configure.c +@@ -80,8 +80,8 @@ static char *DFLT_MOUSE_DEV = "/dev/mous static char *DFLT_MOUSE_DEV = "/dev/sysmouse"; static char *DFLT_MOUSE_PROTO = "auto"; #elif defined(linux) diff --git a/no-return-in-nonvoid-function.diff b/no-return-in-nonvoid-function.diff index c7e6f09..aff166c 100644 --- a/no-return-in-nonvoid-function.diff +++ b/no-return-in-nonvoid-function.diff @@ -1,6 +1,8 @@ ---- hw/kdrive/src/kdrive.c.orig 2008-06-27 19:35:41.000000000 +0000 -+++ hw/kdrive/src/kdrive.c 2008-06-27 19:40:53.000000000 +0000 -@@ -1397,6 +1397,7 @@ KdInitOutput (ScreenInfo *pScreenInfo +Index: hw/kdrive/src/kdrive.c +=================================================================== +--- hw/kdrive/src/kdrive.c.orig ++++ hw/kdrive/src/kdrive.c +@@ -1380,6 +1380,7 @@ OsVendorFatalError(void) int DPMSSet(ClientPtr client, int level) { diff --git a/p_bug96328.diff b/p_bug96328.diff index 0b44efd..a77c134 100644 --- a/p_bug96328.diff +++ b/p_bug96328.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/common/xf86Configure.c.orig 2007-09-29 15:44:40.095702000 +0200 -+++ hw/xfree86/common/xf86Configure.c 2007-09-29 15:50:35.625921250 +0200 -@@ -267,23 +267,36 @@ +Index: hw/xfree86/common/xf86Configure.c +=================================================================== +--- hw/xfree86/common/xf86Configure.c.orig ++++ hw/xfree86/common/xf86Configure.c +@@ -237,23 +237,36 @@ configureInputSection (void) /* Crude mechanism to auto-detect mouse (os dependent) */ { diff --git a/p_default-module-path.diff b/p_default-module-path.diff index 7ce83e3..31f7b81 100644 --- a/p_default-module-path.diff +++ b/p_default-module-path.diff @@ -1,7 +1,8 @@ -diff -u -r hw/xfree86.orig/common/xf86Globals.c hw/xfree86/common/xf86Globals.c ---- hw/xfree86.orig/common/xf86Globals.c 2006-07-05 12:37:32.000000000 +0200 -+++ hw/xfree86/common/xf86Globals.c 2006-07-05 14:59:51.000000000 +0200 -@@ -176,7 +176,7 @@ +Index: hw/xfree86/common/xf86Globals.c +=================================================================== +--- hw/xfree86/common/xf86Globals.c.orig ++++ hw/xfree86/common/xf86Globals.c +@@ -141,7 +141,7 @@ xf86InfoRec xf86Info = { }; const char *xf86ConfigFile = NULL; const char *xf86InputDeviceList = NULL; diff --git a/p_ia64-console.diff b/p_ia64-console.diff index 2371299..961b880 100644 --- a/p_ia64-console.diff +++ b/p_ia64-console.diff @@ -1,31 +1,7 @@ -Index: shared/VTsw_usl.c +Index: linux/lnx_init.c =================================================================== -RCS file: /cvs/xorg/xc/programs/Xserver/hw/xfree86/os-support/shared/VTsw_usl.c,v -retrieving revision 1.5 -diff -u -r1.5 VTsw_usl.c ---- shared/VTsw_usl.c 3 Jul 2005 07:01:35 -0000 1.5 -+++ shared/VTsw_usl.c 29 Jun 2006 09:33:05 -0000 -@@ -64,15 +64,15 @@ - xf86VTSwitchAway() - { - xf86Info.vtRequestsPending = FALSE; -+#ifdef OSSWITCHAWAY -+ OSSWITCHAWAY; -+#endif - if (ioctl(xf86Info.consoleFd, VT_RELDISP, 1) < 0) - { - return(FALSE); - } - else - { --#ifdef OSSWITCHAWAY -- OSSWITCHAWAY; --#endif - return(TRUE); - } - } ---- linux/lnx_init.c.orig 2009-02-27 15:41:39.000000000 +0100 -+++ linux/lnx_init.c 2009-02-27 15:41:47.000000000 +0100 +--- linux/lnx_init.c.orig ++++ linux/lnx_init.c @@ -252,9 +252,6 @@ xf86OpenConsole(void) { struct termios nTty; @@ -71,3 +47,26 @@ diff -u -r1.5 VTsw_usl.c } close(xf86Info.consoleFd); /* make the vt-manager happy */ +Index: shared/VTsw_usl.c +=================================================================== +--- shared/VTsw_usl.c.orig ++++ shared/VTsw_usl.c +@@ -62,15 +62,15 @@ Bool + xf86VTSwitchAway() + { + xf86Info.vtRequestsPending = FALSE; ++#ifdef OSSWITCHAWAY ++ OSSWITCHAWAY; ++#endif + if (ioctl(xf86Info.consoleFd, VT_RELDISP, 1) < 0) + { + return(FALSE); + } + else + { +-#ifdef OSSWITCHAWAY +- OSSWITCHAWAY; +-#endif + return(TRUE); + } + } diff --git a/p_xkills_wrong_client.diff b/p_xkills_wrong_client.diff index 8e334e9..7db0bf9 100644 --- a/p_xkills_wrong_client.diff +++ b/p_xkills_wrong_client.diff @@ -1,6 +1,8 @@ ---- os/connection.c.orig 2007-12-12 23:14:52.787902250 +0100 -+++ os/connection.c 2007-12-12 23:16:10.600765250 +0100 -@@ -1009,7 +1009,7 @@ +Index: os/connection.c +=================================================================== +--- os/connection.c.orig ++++ os/connection.c +@@ -1009,7 +1009,7 @@ CheckConnections(void) do { r = Select (curclient + 1, &tmask, NULL, NULL, ¬ime); } while (r < 0 && (errno == EINTR || errno == EAGAIN)); diff --git a/p_xnest-ignore-getimage-errors.diff b/p_xnest-ignore-getimage-errors.diff index 4301187..9513717 100644 --- a/p_xnest-ignore-getimage-errors.diff +++ b/p_xnest-ignore-getimage-errors.diff @@ -1,11 +1,8 @@ -Index: programs/Xserver/hw/xnest/GCOps.c +Index: build-3Jvc9fE/xorg-server-1.6.3/hw/xnest/GCOps.c =================================================================== -RCS file: /cvs/xorg/xc/programs/Xserver/hw/xnest/GCOps.c,v -retrieving revision 1.6 -diff -u -p -r1.6 GCOps.c ---- programs/Xserver/hw/xnest/GCOps.c 14 Jul 2005 03:36:43 -0000 1.6 -+++ programs/Xserver/hw/xnest/GCOps.c 7 Jun 2006 13:40:01 -0000 -@@ -96,6 +96,13 @@ xnestPutImage(DrawablePtr pDrawable, GCP +--- build-3Jvc9fE/xorg-server-1.6.3.orig/hw/xnest/GCOps.c ++++ build-3Jvc9fE/xorg-server-1.6.3/hw/xnest/GCOps.c +@@ -94,6 +94,13 @@ xnestPutImage(DrawablePtr pDrawable, GCP } } @@ -19,7 +16,7 @@ diff -u -p -r1.6 GCOps.c void xnestGetImage(DrawablePtr pDrawable, int x, int y, int w, int h, unsigned int format, unsigned long planeMask, -@@ -103,9 +110,13 @@ xnestGetImage(DrawablePtr pDrawable, int +@@ -101,9 +108,13 @@ xnestGetImage(DrawablePtr pDrawable, int { XImage *ximage; int length; diff --git a/p_xorg_acpi.diff b/p_xorg_acpi.diff index 78cfa05..f598cf5 100644 --- a/p_xorg_acpi.diff +++ b/p_xorg_acpi.diff @@ -1,6 +1,7 @@ -diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_acpi.c hw/xfree86/os-support/linux/lnx_acpi.c ---- hw/xfree86/os-support/linux.orig/lnx_acpi.c 2006-08-07 17:57:13.000000000 +0200 -+++ hw/xfree86/os-support/linux/lnx_acpi.c 2006-08-07 17:57:20.000000000 +0200 +Index: hw/xfree86/os-support/linux/lnx_acpi.c +=================================================================== +--- hw/xfree86/os-support/linux/lnx_acpi.c.orig ++++ hw/xfree86/os-support/linux/lnx_acpi.c @@ -32,8 +32,10 @@ #define ACPI_VIDEO_HEAD_INVALID (~0u - 1) #define ACPI_VIDEO_HEAD_END (~0u) @@ -35,7 +36,7 @@ diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_acpi.c hw/xfree86/os-support/ static int lnxACPIGetEventFromOs(int fd, pmEvent *events, int num) { -@@ -132,16 +150,13 @@ lnxACPIConfirmEventToOs(int fd, pmEvent +@@ -127,16 +145,13 @@ lnxACPIConfirmEventToOs(int fd, pmEvent } } @@ -54,7 +55,7 @@ diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_acpi.c hw/xfree86/os-support/ if (ACPIihPtr || !xf86Info.pmFlag) return NULL; -@@ -169,6 +184,27 @@ lnxACPIOpen(void) +@@ -164,6 +179,27 @@ lnxACPIOpen(void) return lnxCloseACPI; } @@ -82,7 +83,7 @@ diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_acpi.c hw/xfree86/os-support/ static void lnxCloseACPI(void) { -@@ -182,5 +218,11 @@ lnxCloseACPI(void) +@@ -177,5 +213,11 @@ lnxCloseACPI(void) shutdown(fd, 2); close(fd); ACPIihPtr = NULL; @@ -94,9 +95,10 @@ diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_acpi.c hw/xfree86/os-support/ + } } } -diff -p -u -r hw/xfree86/os-support/linux.orig/lnx_apm.c hw/xfree86/os-support/linux/lnx_apm.c ---- hw/xfree86/os-support/linux.orig/lnx_apm.c 2006-08-07 17:57:13.000000000 +0200 -+++ hw/xfree86/os-support/linux/lnx_apm.c 2006-08-07 17:58:08.000000000 +0200 +Index: hw/xfree86/os-support/linux/lnx_apm.c +=================================================================== +--- hw/xfree86/os-support/linux/lnx_apm.c.orig ++++ hw/xfree86/os-support/linux/lnx_apm.c @@ -12,6 +12,7 @@ #ifdef HAVE_ACPI diff --git a/pci-legacy-mem-fallback.diff b/pci-legacy-mem-fallback.diff index a56cbcc..41ba608 100644 --- a/pci-legacy-mem-fallback.diff +++ b/pci-legacy-mem-fallback.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/os-support/bus/linuxPci.c +Index: hw/xfree86/os-support/bus/linuxPci.c +=================================================================== +--- hw/xfree86/os-support/bus/linuxPci.c.orig +++ hw/xfree86/os-support/bus/linuxPci.c -@@ -493,6 +493,7 @@ xf86MapDomainMemory(int ScreenNum, int F +@@ -476,6 +476,7 @@ xf86MapDomainMemory(int ScreenNum, int F * legacy_mem interface is unavailable. */ if ((Base > 1024*1024) || ((fd = linuxOpenLegacy(dev, "legacy_mem")) < 0)) @@ -8,7 +10,7 @@ return linuxMapPci(ScreenNum, Flags, dev, Base, Size, PCIIOC_MMAP_IS_MEM); else -@@ -501,6 +502,8 @@ xf86MapDomainMemory(int ScreenNum, int F +@@ -484,6 +485,8 @@ xf86MapDomainMemory(int ScreenNum, int F if (fd >= 0) close(fd); if (addr == NULL || addr == MAP_FAILED) { diff --git a/pixman.diff b/pixman.diff index 9277cd3..cc512d0 100644 --- a/pixman.diff +++ b/pixman.diff @@ -1,7 +1,9 @@ ---- include/miscstruct.h.orig 2007-11-30 22:14:17.372752750 +0100 -+++ include/miscstruct.h 2007-11-30 22:14:59.483384500 +0100 -@@ -51,7 +51,7 @@ - +Index: include/miscstruct.h +=================================================================== +--- include/miscstruct.h.orig ++++ include/miscstruct.h +@@ -50,7 +50,7 @@ SOFTWARE. + #include "misc.h" #include -#include diff --git a/pu_fixes.diff b/pu_fixes.diff index 253fcb1..8420ec1 100644 --- a/pu_fixes.diff +++ b/pu_fixes.diff @@ -1,7 +1,8 @@ -diff -u -r -N ../xc.old/programs/Xserver/hw/xfree86/xaa/xaaImage.c ./programs/Xserver/hw/xfree86/xaa/xaaImage.c ---- ../xc.old/programs/Xserver/hw/xfree86/xaa/xaaImage.c 2003-10-27 16:30:43.000000000 +0100 -+++ hw/xfree86/xaa/xaaImage.c 2003-10-27 16:32:18.000000000 +0100 -@@ -236,12 +236,16 @@ +Index: hw/xfree86/xaa/xaaImage.c +=================================================================== +--- hw/xfree86/xaa/xaaImage.c.orig ++++ hw/xfree86/xaa/xaaImage.c +@@ -238,12 +238,16 @@ BAD_ALIGNMENT: (*infoRec->SetupForImageWrite)(pScrn, rop, planemask, trans, bpp, depth); (*infoRec->SubsequentImageWriteRect)(pScrn, x, y, w, h, skipleft); diff --git a/randr1_1-sig11.diff b/randr1_1-sig11.diff index 305396d..a367432 100644 --- a/randr1_1-sig11.diff +++ b/randr1_1-sig11.diff @@ -1,5 +1,7 @@ ---- xorg-server-1.6.0/hw/xfree86/common/xf86RandR.c.orig 2009-02-25 20:12:11.000000000 +0100 -+++ xorg-server-1.6.0/hw/xfree86/common/xf86RandR.c 2009-02-27 17:04:34.000000000 +0100 +Index: xorg-server-1.6.3/hw/xfree86/common/xf86RandR.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86RandR.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86RandR.c @@ -246,6 +246,9 @@ xf86RandRSetConfig (ScreenPtr pScreen, Bool useVirtual = FALSE; Rotation oldRotation = randrp->rotation; diff --git a/truetype_fontpath.diff b/truetype_fontpath.diff index 88a321a..172d4c2 100644 --- a/truetype_fontpath.diff +++ b/truetype_fontpath.diff @@ -1,6 +1,8 @@ ---- configure.ac.orig 2009-06-19 19:33:07.000000000 +0000 -+++ configure.ac 2009-06-19 19:34:00.000000000 +0000 -@@ -466,7 +466,7 @@ +Index: configure.ac +=================================================================== +--- configure.ac.orig ++++ configure.ac +@@ -466,7 +466,7 @@ AC_ARG_WITH(builderstring, AS_HELP_STR AC_ARG_WITH(fontdir, AS_HELP_STRING([--with-fontdir=FONTDIR], [Path to top level dir where fonts are installed (default: ${libdir}/X11/fonts)]), [ FONTDIR="$withval" ], [ FONTDIR="${libdir}/X11/fonts" ]) @@ -9,9 +11,11 @@ case $host_os in darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;; esac ---- hw/xfree86/Makefile.am.orig 2009-06-19 19:31:52.000000000 +0000 -+++ hw/xfree86/Makefile.am 2009-06-19 19:32:53.000000000 +0000 -@@ -99,6 +99,7 @@ +Index: hw/xfree86/Makefile.am +=================================================================== +--- hw/xfree86/Makefile.am.orig ++++ hw/xfree86/Makefile.am +@@ -103,6 +103,7 @@ CPP_FILES_FLAGS = \ -DMISCFONTPATH="\"$(BASE_FONT_PATH)/misc:unscaled\"" \ -DT1FONTPATH="\"$(BASE_FONT_PATH)/Type1\"" \ -DTRUETYPEFONTPATH="\"$(BASE_FONT_PATH)/TTF\"" \ diff --git a/vidmode-sig11.diff b/vidmode-sig11.diff index b64d17d..cc3a03b 100644 --- a/vidmode-sig11.diff +++ b/vidmode-sig11.diff @@ -1,6 +1,8 @@ ---- hw/xfree86/common/xf86VidMode.c.orig 2008-11-06 17:46:03.000000000 +0100 -+++ hw/xfree86/common/xf86VidMode.c 2008-11-06 17:48:54.000000000 +0100 -@@ -225,6 +225,8 @@ VidModeGetFirstModeline(int scrnIndex, p +Index: hw/xfree86/common/xf86VidMode.c +=================================================================== +--- hw/xfree86/common/xf86VidMode.c.orig ++++ hw/xfree86/common/xf86VidMode.c +@@ -226,6 +226,8 @@ VidModeGetFirstModeline(int scrnIndex, p pScrn = xf86Screens[scrnIndex]; pVidMode = VMPTR(pScrn->pScreen); diff --git a/xephyr.diff b/xephyr.diff index 0331bd2..2075e91 100644 --- a/xephyr.diff +++ b/xephyr.diff @@ -1,5 +1,7 @@ ---- hw/kdrive/Makefile.am.orig 2008-11-14 22:27:05.000000000 +0100 -+++ hw/kdrive/Makefile.am 2009-02-27 15:45:07.000000000 +0100 +Index: hw/kdrive/Makefile.am +=================================================================== +--- hw/kdrive/Makefile.am.orig ++++ hw/kdrive/Makefile.am @@ -1,5 +1,5 @@ if BUILD_KDRIVEFBDEVLIB -FBDEV_SUBDIRS = fbdev @@ -7,7 +9,7 @@ endif if XFAKESERVER -@@ -21,8 +21,7 @@ +@@ -21,8 +21,7 @@ endif SERVER_SUBDIRS = \ $(XSDL_SUBDIRS) \ $(FBDEV_SUBDIRS) \ diff --git a/xorg-detect-psb.patch b/xorg-detect-psb.patch index 1364681..526e4e6 100644 --- a/xorg-detect-psb.patch +++ b/xorg-detect-psb.patch @@ -1,6 +1,8 @@ ---- xorg-server-1.6.0/hw/xfree86/common/xf86AutoConfig.c~ 2009-03-26 22:10:45.000000000 -0700 -+++ xorg-server-1.6.0/hw/xfree86/common/xf86AutoConfig.c 2009-03-26 22:10:45.000000000 -0700 -@@ -171,6 +171,9 @@ +Index: xorg-server-1.6.3/hw/xfree86/common/xf86AutoConfig.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86AutoConfig.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86AutoConfig.c +@@ -175,6 +175,9 @@ videoPtrToDriverList(struct pci_device * case 0x8086: if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) { driverList[0] = "i740"; diff --git a/xorg-docs.diff b/xorg-docs.diff index 0909772..282eeab 100644 --- a/xorg-docs.diff +++ b/xorg-docs.diff @@ -1,6 +1,8 @@ ---- Makefile.am +Index: Makefile.am +=================================================================== +--- Makefile.am.orig +++ Makefile.am -@@ -20,7 +20,7 @@ +@@ -20,11 +20,9 @@ # # Process this file with autoconf to create configure. @@ -8,19 +10,14 @@ +SUBDIRS = man x11docdir = @X11DOCDIR@ - dist_x11doc_DATA = MAINTAINERS ---- Makefile.am -+++ Makefile.am -@@ -23,8 +23,6 @@ - SUBDIRS = man - x11docdir = @X11DOCDIR@ - -dist_x11doc_DATA = MAINTAINERS - EXTRA_DIST = \ - MAINTAINERS \ - misc/xlogo.epsi \ ---- man/general/Makefile.am + MAINTAINERS \ + misc/xlogo.epsi \ +Index: man/general/Makefile.am +=================================================================== +--- man/general/Makefile.am.orig +++ man/general/Makefile.am @@ -23,13 +23,8 @@ miscmandir = $(MISC_MAN_DIR) diff --git a/xorg-server-xf4vnc-TranslateNone.diff b/xorg-server-xf4vnc-TranslateNone.diff index 854ff0b..fbf0818 100644 --- a/xorg-server-xf4vnc-TranslateNone.diff +++ b/xorg-server-xf4vnc-TranslateNone.diff @@ -1,6 +1,7 @@ -diff -u -r -p xorg-server-1.4.0.90.old//hw/vnc/translate.c xorg-server-1.4.0.90/hw/vnc/translate.c ---- xorg-server-1.4.0.90.old//hw/vnc/translate.c 2008-07-03 18:59:24.000000000 +0200 -+++ xorg-server-1.4.0.90/hw/vnc/translate.c 2008-07-03 18:59:44.000000000 +0200 +Index: xorg-server-1.6.3/hw/vnc/translate.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/translate.c ++++ xorg-server-1.6.3/hw/vnc/translate.c @@ -168,17 +168,17 @@ rfbTranslateNone(ScreenPtr pScreen, char { VNCSCREENPTR(pScreen); diff --git a/xorg-server-xf4vnc-abi-version.diff b/xorg-server-xf4vnc-abi-version.diff index 116fef4..9ee70a2 100644 --- a/xorg-server-xf4vnc-abi-version.diff +++ b/xorg-server-xf4vnc-abi-version.diff @@ -1,7 +1,8 @@ -diff -u -r ../xorg-server-1.4.99.906.orig//hw/xfree86/vnc/vncInit.c ./hw/xfree86/vnc/vncInit.c ---- ../xorg-server-1.4.99.906.orig//hw/xfree86/vnc/vncInit.c 2008-08-01 22:02:51.000000000 +0000 -+++ ./hw/xfree86/vnc/vncInit.c 2008-08-01 22:07:32.000000000 +0000 -@@ -573,8 +573,8 @@ +Index: hw/xfree86/vnc/vncInit.c +=================================================================== +--- hw/xfree86/vnc/vncInit.c.orig ++++ hw/xfree86/vnc/vncInit.c +@@ -573,8 +573,8 @@ static XF86ModuleVersionInfo vncVersRec #if 0 ABI_EXTENSION_VERSION, #else @@ -12,10 +13,11 @@ diff -u -r ../xorg-server-1.4.99.906.orig//hw/xfree86/vnc/vncInit.c ./hw/xfree86 #endif MOD_CLASS_EXTENSION, {0,0,0,0} -diff -u -r ../xorg-server-1.4.99.906.orig//xcliplist/cliplistmod.c ./xcliplist/cliplistmod.c ---- ../xorg-server-1.4.99.906.orig//xcliplist/cliplistmod.c 2008-08-01 22:02:51.000000000 +0000 -+++ ./xcliplist/cliplistmod.c 2008-08-01 22:07:05.000000000 +0000 -@@ -26,8 +26,8 @@ +Index: xcliplist/cliplistmod.c +=================================================================== +--- xcliplist/cliplistmod.c.orig ++++ xcliplist/cliplistmod.c +@@ -26,8 +26,8 @@ static XF86ModuleVersionInfo VersRec = { #if 0 ABI_EXTENSION_VERSION, #else diff --git a/xorg-server-xf4vnc-busyloop.diff b/xorg-server-xf4vnc-busyloop.diff index 859ee97..6c0f982 100644 --- a/xorg-server-xf4vnc-busyloop.diff +++ b/xorg-server-xf4vnc-busyloop.diff @@ -1,7 +1,7 @@ -diff --git a/hw/vnc/sockets.c b/hw/vnc/sockets.c -index 942fa36..c7a9ea2 100644 ---- a/hw/vnc/sockets.c -+++ b/hw/vnc/sockets.c +Index: xorg-server-1.6.3/hw/vnc/sockets.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/sockets.c ++++ xorg-server-1.6.3/hw/vnc/sockets.c @@ -448,7 +448,7 @@ WriteExact(sock, buf, len) int n; fd_set fds; @@ -11,7 +11,7 @@ index 942fa36..c7a9ea2 100644 int totalTimeWaited = 0; #endif -@@ -469,7 +469,7 @@ WriteExact(sock, buf, len) +@@ -470,7 +470,7 @@ WriteExact(sock, buf, len) return n; } @@ -20,7 +20,7 @@ index 942fa36..c7a9ea2 100644 /* Retry every 5 seconds until we exceed rfbMaxClientWait. We need to do this because select doesn't necessarily return immediately when the other end has gone away */ -@@ -487,7 +487,7 @@ WriteExact(sock, buf, len) +@@ -488,7 +488,7 @@ WriteExact(sock, buf, len) tv.tv_usec = 0; #endif n = select(sock+1, NULL, &fds, NULL, &tv); diff --git a/xorg-server-xf4vnc-clientTimeout.diff b/xorg-server-xf4vnc-clientTimeout.diff index 167e28f..9c8cbeb 100644 --- a/xorg-server-xf4vnc-clientTimeout.diff +++ b/xorg-server-xf4vnc-clientTimeout.diff @@ -1,6 +1,8 @@ ---- a/hw/vnc/sockets.c 2008-12-11 20:30:21.000000000 +0100 -+++ b/hw/vnc/sockets.c 2008-12-17 14:09:17.539288000 +0100 -@@ -490,8 +490,10 @@ +Index: xorg-server-1.6.3/hw/vnc/sockets.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/sockets.c ++++ xorg-server-1.6.3/hw/vnc/sockets.c +@@ -490,8 +490,10 @@ WriteExact(sock, buf, len) n = select(sock+1, NULL, &fds, NULL, &tv); #if 1 if (n < 0) { diff --git a/xorg-server-xf4vnc-cutpaste.diff b/xorg-server-xf4vnc-cutpaste.diff index b80b63f..8d62a9e 100644 --- a/xorg-server-xf4vnc-cutpaste.diff +++ b/xorg-server-xf4vnc-cutpaste.diff @@ -1,4 +1,6 @@ ---- hw/vnc/cutpaste.c +Index: hw/vnc/cutpaste.c +=================================================================== +--- hw/vnc/cutpaste.c.orig +++ hw/vnc/cutpaste.c @@ -58,7 +58,7 @@ rfbSetXCutText(char *str, int len) 8, PropModeReplace, len, diff --git a/xorg-server-xf4vnc-disable-dmxvnc.diff b/xorg-server-xf4vnc-disable-dmxvnc.diff index 6a5fd67..2819979 100644 --- a/xorg-server-xf4vnc-disable-dmxvnc.diff +++ b/xorg-server-xf4vnc-disable-dmxvnc.diff @@ -1,6 +1,7 @@ -diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/Makefile.am ./hw/dmx/Makefile.am ---- ../xorg-server-1.4.99.905.old//hw/dmx/Makefile.am 2008-07-10 07:15:50.000000000 +0000 -+++ ./hw/dmx/Makefile.am 2008-07-10 07:21:28.000000000 +0000 +Index: hw/dmx/Makefile.am +=================================================================== +--- hw/dmx/Makefile.am.orig ++++ hw/dmx/Makefile.am @@ -1,6 +1,6 @@ DIST_SUBDIRS = input vnc config glxProxy examples doc @@ -9,9 +10,10 @@ diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/Makefile.am ./hw/dmx/Makefile.a bin_PROGRAMS = Xdmx if XINERAMA -diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/dmx-config.h ./hw/dmx/dmx-config.h ---- ../xorg-server-1.4.99.905.old//hw/dmx/dmx-config.h 2008-07-10 07:15:50.000000000 +0000 -+++ ./hw/dmx/dmx-config.h 2008-07-10 07:19:44.000000000 +0000 +Index: hw/dmx/dmx-config.h +=================================================================== +--- hw/dmx/dmx-config.h.orig ++++ hw/dmx/dmx-config.h @@ -72,8 +72,8 @@ /* Enable the DMX extension */ #define DMXEXT @@ -22,22 +24,24 @@ diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/dmx-config.h ./hw/dmx/dmx-confi +#undef DMXVNC /* Disable the extensions that are not currently supported */ - #undef BEZIER -diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/input/Makefile.am ./hw/dmx/input/Makefile.am ---- ../xorg-server-1.4.99.905.old//hw/dmx/input/Makefile.am 2008-07-10 07:15:50.000000000 +0000 -+++ ./hw/dmx/input/Makefile.am 2008-07-10 07:20:43.000000000 +0000 -@@ -65,7 +65,6 @@ - -I$(top_srcdir)/hw/xfree86/common \ + #undef MULTIBUFFER +Index: hw/dmx/input/Makefile.am +=================================================================== +--- hw/dmx/input/Makefile.am.orig ++++ hw/dmx/input/Makefile.am +@@ -65,7 +65,6 @@ AM_CFLAGS = $(DIX_CFLAGS) \ + -I$(top_srcdir)/hw/dmx \ $(GLX_INCS) \ -DHAVE_DMX_CONFIG_H \ - -DDMXVNC=1 \ $(GLX_DEFS) \ @DMXMODULES_CFLAGS@ -diff -u -r ../xorg-server-1.4.99.905.old//hw/dmx/vnc/Makefile.am ./hw/dmx/vnc/Makefile.am ---- ../xorg-server-1.4.99.905.old//hw/dmx/vnc/Makefile.am 2008-07-10 07:15:50.000000000 +0000 -+++ ./hw/dmx/vnc/Makefile.am 2008-07-10 07:18:02.000000000 +0000 -@@ -37,7 +37,6 @@ +Index: hw/dmx/vnc/Makefile.am +=================================================================== +--- hw/dmx/vnc/Makefile.am.orig ++++ hw/dmx/vnc/Makefile.am +@@ -37,7 +37,6 @@ AM_CFLAGS = \ -I$(top_srcdir)/hw/xfree86/common \ -DHAVE_DMX_CONFIG_H \ $(DIX_CFLAGS) \ diff --git a/xorg-server-xf4vnc-fix.diff b/xorg-server-xf4vnc-fix.diff index 03aa03c..121b6f7 100644 --- a/xorg-server-xf4vnc-fix.diff +++ b/xorg-server-xf4vnc-fix.diff @@ -1,7 +1,20 @@ -Index: xorg-server-1.6.1/hw/vnc/cutpaste.c +Index: xorg-server-1.6.3/hw/vnc/cursor.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/cutpaste.c -+++ xorg-server-1.6.1/hw/vnc/cutpaste.c +--- xorg-server-1.6.3.orig/hw/vnc/cursor.c ++++ xorg-server-1.6.3/hw/vnc/cursor.c +@@ -262,7 +262,7 @@ rfbSendCursorPos(cl, pScreen) + + #if XFREE86VNC + if (pScreen == pCursorScreen) +- miPointerPosition(&x, &y); ++ miPointerGetPosition(inputInfo.pointer, &x, &y); + #else + rfbSpriteGetCursorPos(pScreen, &x, &y); + #endif +Index: xorg-server-1.6.3/hw/vnc/cutpaste.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/cutpaste.c ++++ xorg-server-1.6.3/hw/vnc/cutpaste.c @@ -66,7 +66,7 @@ rfbSetXCutText(char *str, int len) event.u.selectionClear.time = GetTimeInMillis(); event.u.selectionClear.window = pSel->window; @@ -11,10 +24,121 @@ Index: xorg-server-1.6.1/hw/vnc/cutpaste.c NoEventMask, NoEventMask /* CantBeFiltered */, NullGrab); } -Index: xorg-server-1.6.1/hw/vnc/kbdptr.c +Index: xorg-server-1.6.3/hw/vnc/dispcur.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/kbdptr.c -+++ xorg-server-1.6.1/hw/vnc/kbdptr.c +--- xorg-server-1.6.3.orig/hw/vnc/dispcur.c ++++ xorg-server-1.6.3/hw/vnc/dispcur.c +@@ -74,7 +74,10 @@ in this Software without prior written a + + /* per-screen private data */ + +-static DevPrivateKey rfbDCScreenKey = &rfbDCScreenKey; ++static int rfbDCScreenKeyStore; ++static DevPrivateKey rfbDCScreenKey = &rfbDCScreenKeyStore; ++static int rfbScreenKeyStore; ++static DevPrivateKey rfbScreenKey = &rfbScreenKeyStore; + + static Bool rfbDCCloseScreen(int index, ScreenPtr pScreen); + +@@ -205,7 +208,7 @@ rfbDCRealizeCursor (pScreen, pCursor) + CursorPtr pCursor; + { + if (pCursor->bits->refcnt <= 1) +- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, NULL); ++ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, NULL); + return TRUE; + } + +@@ -303,7 +306,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP + xfree ((pointer) pPriv); + return (rfbDCCursorPtr)NULL; + } +- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, pPriv); ++ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, pPriv); + return pPriv; + } + pPriv->pPicture = 0; +@@ -321,7 +324,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP + xfree ((pointer) pPriv); + return (rfbDCCursorPtr)NULL; + } +- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, pPriv); ++ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, pPriv); + + /* create the two sets of bits, clipping as appropriate */ + +@@ -368,7 +371,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor) + rfbDCCursorPtr pPriv; + + pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, +- pScreen); ++ rfbScreenKey); + if (pPriv && (pCursor->bits->refcnt <= 1)) + { + if (pPriv->sourceBits) +@@ -380,7 +383,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor) + FreePicture (pPriv->pPicture, 0); + #endif + xfree ((pointer) pPriv); +- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, NULL); ++ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, NULL); + } + return TRUE; + } +@@ -439,7 +442,7 @@ rfbDCPutUpCursor (pScreen, pCursor, x, y + WindowPtr pWin; + + pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, +- pScreen); ++ rfbScreenKey); + if (!pPriv) + { + pPriv = rfbDCRealize(pScreen, pCursor); +@@ -690,7 +693,7 @@ rfbDCMoveCursor (pScreen, pCursor, x, y, + PixmapPtr pTemp; + + pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, +- pScreen); ++ rfbScreenKey); + if (!pPriv) + { + pPriv = rfbDCRealize(pScreen, pCursor); +Index: xorg-server-1.6.3/hw/vnc/init.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/init.c ++++ xorg-server-1.6.3/hw/vnc/init.c +@@ -138,7 +138,7 @@ static void rfbCrossScreen(ScreenPtr pSc + + + static void +-PointerWarpCursor(ScreenPtr pScreen, int x, int y) ++PointerWarpCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) + { + #if 0 + DeviceIntPtr pDev = NULL; +@@ -775,8 +775,8 @@ InitInput(argc, argv) + char *argv[]; + { + DeviceIntPtr p, k; +- k = AddInputDevice(rfbKeybdProc, TRUE); +- p = AddInputDevice(rfbMouseProc, TRUE); ++ k = AddInputDevice(serverClient, rfbKeybdProc, TRUE); ++ p = AddInputDevice(serverClient, rfbMouseProc, TRUE); + RegisterKeyboardDevice(k); + RegisterPointerDevice(p); + +@@ -843,7 +843,6 @@ rfbMouseProc(pDevice, onoff) + map[4] = 4; + map[5] = 5; + InitPointerDeviceStruct(pDev, map, 5, +- GetMotionHistory, + PtrDeviceControl, + GetMaximumEventsNum(), 2 /* numAxes */); + vncSetPointerDevice(pDevice); +Index: xorg-server-1.6.3/hw/vnc/kbdptr.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/vnc/kbdptr.c ++++ xorg-server-1.6.3/hw/vnc/kbdptr.c @@ -74,19 +74,26 @@ vncSetPointerDevice(DeviceIntPtr ptr) static void EnqueueMotion(DeviceIntPtr ptrDev, int x, int y) @@ -105,10 +229,10 @@ Index: xorg-server-1.6.1/hw/vnc/kbdptr.c ErrorF("KbdAddEvent: unknown KeySym 0x%x - allocating KeyCode %d\n", (int)keySym, keyCode); -Index: xorg-server-1.6.1/hw/vnc/rfbkeyb.c +Index: xorg-server-1.6.3/hw/vnc/rfbkeyb.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/rfbkeyb.c -+++ xorg-server-1.6.1/hw/vnc/rfbkeyb.c +--- xorg-server-1.6.3.orig/hw/vnc/rfbkeyb.c ++++ xorg-server-1.6.3/hw/vnc/rfbkeyb.c @@ -388,7 +388,7 @@ static XF86ModuleVersionInfo xf86rfbKeyb "xf4vnc Project, see http://xf4vnc.sf.net", MODINFOSTRING1, @@ -118,10 +242,10 @@ Index: xorg-server-1.6.1/hw/vnc/rfbkeyb.c 1, 0, 0, ABI_CLASS_XINPUT, ABI_XINPUT_VERSION, -Index: xorg-server-1.6.1/hw/vnc/rfbmouse.c +Index: xorg-server-1.6.3/hw/vnc/rfbmouse.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/rfbmouse.c -+++ xorg-server-1.6.1/hw/vnc/rfbmouse.c +--- xorg-server-1.6.3.orig/hw/vnc/rfbmouse.c ++++ xorg-server-1.6.3/hw/vnc/rfbmouse.c @@ -98,10 +98,12 @@ xf86rfbMouseControlProc(DeviceIntPtr dev void *func1; int (*func2)(void); @@ -154,10 +278,10 @@ Index: xorg-server-1.6.1/hw/vnc/rfbmouse.c 1, 0, 0, ABI_CLASS_XINPUT, ABI_XINPUT_VERSION, -Index: xorg-server-1.6.1/hw/vnc/rfbserver.c +Index: xorg-server-1.6.3/hw/vnc/rfbserver.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/rfbserver.c -+++ xorg-server-1.6.1/hw/vnc/rfbserver.c +--- xorg-server-1.6.3.orig/hw/vnc/rfbserver.c ++++ xorg-server-1.6.3/hw/vnc/rfbserver.c @@ -1122,8 +1122,8 @@ rfbProcessClientNormalMessage(cl) { @@ -169,10 +293,10 @@ Index: xorg-server-1.6.1/hw/vnc/rfbserver.c } #endif -Index: xorg-server-1.6.1/hw/vnc/sprite.c +Index: xorg-server-1.6.3/hw/vnc/sprite.c =================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/sprite.c -+++ xorg-server-1.6.1/hw/vnc/sprite.c +--- xorg-server-1.6.3.orig/hw/vnc/sprite.c ++++ xorg-server-1.6.3/hw/vnc/sprite.c @@ -112,7 +112,8 @@ static void rfbSpriteSaveDoomedAreas static RegionPtr rfbSpriteRestoreAreas(WindowPtr pWin, RegionPtr pRgnExposed); static void rfbSpriteComputeSaved(ScreenPtr pScreen); @@ -300,10 +424,53 @@ Index: xorg-server-1.6.1/hw/vnc/sprite.c /* send new cursor shape to interested viewers */ for (cl = rfbClientHead; cl ; cl = cl->next) { -Index: xorg-server-1.6.1/hw/xfree86/vnc/vncInit.c +Index: xorg-server-1.6.3/hw/vnc/vncext.c =================================================================== ---- xorg-server-1.6.1.orig/hw/xfree86/vnc/vncInit.c -+++ xorg-server-1.6.1/hw/xfree86/vnc/vncInit.c +--- xorg-server-1.6.3.orig/hw/vnc/vncext.c ++++ xorg-server-1.6.3/hw/vnc/vncext.c +@@ -36,8 +36,9 @@ + #include + #include + +-DevPrivateKey vncCreateScreenResourcesKey = &vncCreateScreenResourcesKey; +-DevPrivateKey rfbGCKey = &rfbGCKey; ++static int vncCreateScreenResourcesKeyStore, rfbGCKeyStore; ++DevPrivateKey vncCreateScreenResourcesKey = &vncCreateScreenResourcesKeyStore; ++DevPrivateKey rfbGCKey = &rfbGCKeyStore; + + int VncSelectNotify(ClientPtr client, BOOL onoff); + void VncExtensionInit(void); +@@ -514,7 +515,7 @@ GenerateVncConnectedEvent(int sock) + else + conn.ipaddress = (CARD32)peer.sin_addr.s_addr; + +- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, ++ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, + NoEventMask, NullGrab); + } + pn = pn->next; +@@ -557,7 +558,7 @@ GenerateVncChromiumConnectedEvent(int so + else + conn.ipaddress = (CARD32)peer.sin_addr.s_addr; + +- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, ++ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, + NoEventMask, NullGrab); + } + pn = pn->next; +@@ -586,7 +587,7 @@ GenerateVncDisconnectedEvent(int sock) + conn.type = VncEventBase + XVncDisconnected; + conn.sequenceNumber = pn->client->sequence; + conn.connected = sock; +- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, ++ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, + NoEventMask, NullGrab); + } + pn = pn->next; +Index: xorg-server-1.6.3/hw/xfree86/vnc/vncInit.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/vnc/vncInit.c ++++ xorg-server-1.6.3/hw/xfree86/vnc/vncInit.c @@ -35,7 +35,7 @@ #include "xf86.h" #include "xf86_OSproc.h" @@ -402,170 +569,3 @@ Index: xorg-server-1.6.1/hw/xfree86/vnc/vncInit.c pScreen->DisplayCursor = vncDisplayCursor; -Index: xorg-server-1.6.1/hw/vnc/vncext.c -=================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/vncext.c -+++ xorg-server-1.6.1/hw/vnc/vncext.c -@@ -36,8 +36,9 @@ - #include - #include - --DevPrivateKey vncCreateScreenResourcesKey = &vncCreateScreenResourcesKey; --DevPrivateKey rfbGCKey = &rfbGCKey; -+static int vncCreateScreenResourcesKeyStore, rfbGCKeyStore; -+DevPrivateKey vncCreateScreenResourcesKey = &vncCreateScreenResourcesKeyStore; -+DevPrivateKey rfbGCKey = &rfbGCKeyStore; - - int VncSelectNotify(ClientPtr client, BOOL onoff); - void VncExtensionInit(void); -@@ -514,7 +515,7 @@ GenerateVncConnectedEvent(int sock) - else - conn.ipaddress = (CARD32)peer.sin_addr.s_addr; - -- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, -+ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, - NoEventMask, NullGrab); - } - pn = pn->next; -@@ -557,7 +558,7 @@ GenerateVncChromiumConnectedEvent(int so - else - conn.ipaddress = (CARD32)peer.sin_addr.s_addr; - -- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, -+ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, - NoEventMask, NullGrab); - } - pn = pn->next; -@@ -586,7 +587,7 @@ GenerateVncDisconnectedEvent(int sock) - conn.type = VncEventBase + XVncDisconnected; - conn.sequenceNumber = pn->client->sequence; - conn.connected = sock; -- (void) TryClientEvents(pn->client, (xEventPtr)&conn, 1, NoEventMask, -+ (void) TryClientEvents(pn->client, NULL, (xEventPtr)&conn, 1, NoEventMask, - NoEventMask, NullGrab); - } - pn = pn->next; -Index: xorg-server-1.6.1/hw/vnc/cursor.c -=================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/cursor.c -+++ xorg-server-1.6.1/hw/vnc/cursor.c -@@ -262,7 +262,7 @@ rfbSendCursorPos(cl, pScreen) - - #if XFREE86VNC - if (pScreen == pCursorScreen) -- miPointerPosition(&x, &y); -+ miPointerGetPosition(inputInfo.pointer, &x, &y); - #else - rfbSpriteGetCursorPos(pScreen, &x, &y); - #endif -Index: xorg-server-1.6.1/hw/vnc/init.c -=================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/init.c -+++ xorg-server-1.6.1/hw/vnc/init.c -@@ -138,7 +138,7 @@ static void rfbCrossScreen(ScreenPtr pSc - - - static void --PointerWarpCursor(ScreenPtr pScreen, int x, int y) -+PointerWarpCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) - { - #if 0 - DeviceIntPtr pDev = NULL; -@@ -775,8 +775,8 @@ InitInput(argc, argv) - char *argv[]; - { - DeviceIntPtr p, k; -- k = AddInputDevice(rfbKeybdProc, TRUE); -- p = AddInputDevice(rfbMouseProc, TRUE); -+ k = AddInputDevice(serverClient, rfbKeybdProc, TRUE); -+ p = AddInputDevice(serverClient, rfbMouseProc, TRUE); - RegisterKeyboardDevice(k); - RegisterPointerDevice(p); - -@@ -843,7 +843,6 @@ rfbMouseProc(pDevice, onoff) - map[4] = 4; - map[5] = 5; - InitPointerDeviceStruct(pDev, map, 5, -- GetMotionHistory, - PtrDeviceControl, - GetMaximumEventsNum(), 2 /* numAxes */); - vncSetPointerDevice(pDevice); -Index: xorg-server-1.6.1/hw/vnc/dispcur.c -=================================================================== ---- xorg-server-1.6.1.orig/hw/vnc/dispcur.c -+++ xorg-server-1.6.1/hw/vnc/dispcur.c -@@ -74,7 +74,10 @@ in this Software without prior written a - - /* per-screen private data */ - --static DevPrivateKey rfbDCScreenKey = &rfbDCScreenKey; -+static int rfbDCScreenKeyStore; -+static DevPrivateKey rfbDCScreenKey = &rfbDCScreenKeyStore; -+static int rfbScreenKeyStore; -+static DevPrivateKey rfbScreenKey = &rfbScreenKeyStore; - - static Bool rfbDCCloseScreen(int index, ScreenPtr pScreen); - -@@ -205,7 +208,7 @@ rfbDCRealizeCursor (pScreen, pCursor) - CursorPtr pCursor; - { - if (pCursor->bits->refcnt <= 1) -- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, NULL); -+ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, NULL); - return TRUE; - } - -@@ -303,7 +306,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP - xfree ((pointer) pPriv); - return (rfbDCCursorPtr)NULL; - } -- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, pPriv); -+ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, pPriv); - return pPriv; - } - pPriv->pPicture = 0; -@@ -321,7 +324,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP - xfree ((pointer) pPriv); - return (rfbDCCursorPtr)NULL; - } -- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, pPriv); -+ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, pPriv); - - /* create the two sets of bits, clipping as appropriate */ - -@@ -368,7 +371,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor) - rfbDCCursorPtr pPriv; - - pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, -- pScreen); -+ rfbScreenKey); - if (pPriv && (pCursor->bits->refcnt <= 1)) - { - if (pPriv->sourceBits) -@@ -380,7 +383,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor) - FreePicture (pPriv->pPicture, 0); - #endif - xfree ((pointer) pPriv); -- dixSetPrivate(&pCursor->bits->devPrivates, pScreen, NULL); -+ dixSetPrivate(&pCursor->bits->devPrivates, rfbScreenKey, NULL); - } - return TRUE; - } -@@ -439,7 +442,7 @@ rfbDCPutUpCursor (pScreen, pCursor, x, y - WindowPtr pWin; - - pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, -- pScreen); -+ rfbScreenKey); - if (!pPriv) - { - pPriv = rfbDCRealize(pScreen, pCursor); -@@ -690,7 +693,7 @@ rfbDCMoveCursor (pScreen, pCursor, x, y, - PixmapPtr pTemp; - - pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates, -- pScreen); -+ rfbScreenKey); - if (!pPriv) - { - pPriv = rfbDCRealize(pScreen, pCursor); diff --git a/xorg-server-xf4vnc.patch b/xorg-server-xf4vnc.patch index 554c2cf..df6d9ad 100644 --- a/xorg-server-xf4vnc.patch +++ b/xorg-server-xf4vnc.patch @@ -1,9 +1,9 @@ -diff --git a/Makefile.am b/Makefile.am -index e382d58..e655a2b 100644 ---- a/Makefile.am -+++ b/Makefile.am -@@ -30,6 +30,10 @@ if DBE - DBE_DIR=dbe +Index: xorg-server-1.6.3/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/Makefile.am ++++ xorg-server-1.6.3/Makefile.am +@@ -17,6 +17,10 @@ if RECORD + RECORD_DIR=record endif +if XCLIPLIST @@ -13,22 +13,148 @@ index e382d58..e655a2b 100644 SUBDIRS = \ doc \ include \ -@@ -54,6 +58,7 @@ SUBDIRS = \ - $(XTRAP_DIR) \ +@@ -36,6 +40,7 @@ SUBDIRS = \ + damageext \ $(COMPOSITE_DIR) \ $(GLX_DIR) \ + $(XCLIPLIST_DIR) \ exa \ config \ hw -diff --git a/configure.ac b/configure.ac -index 5417bbb..5679cba 100644 -diff --git a/hw/Makefile.am b/hw/Makefile.am -index c2b9571..7ad240e 100644 -diff --git a/hw/dmx/Makefile.am b/hw/dmx/Makefile.am -index 8457aea..e7cf89f 100644 ---- a/hw/dmx/Makefile.am -+++ b/hw/dmx/Makefile.am +Index: xorg-server-1.6.3/configure.ac +=================================================================== +--- xorg-server-1.6.3.orig/configure.ac ++++ xorg-server-1.6.3/configure.ac +@@ -553,6 +553,8 @@ AC_ARG_ENABLE(xfree86-utils, AS_HELP + + dnl DDXes. + AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) ++AC_ARG_ENABLE(xcliplist, AS_HELP_STRING([--enable-xcliplist], [Build XClipList extension (default: auto)]), [XCLIPLIST=$enableval], [XCLIPLIST=auto]) ++AC_ARG_ENABLE(vnc, AS_HELP_STRING([--enable-vnc], [Build Xvnc server (default: yes)]), [VNC=$enableval], [VNC=auto]) + AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx], [Build DMX server (default: no)]), [DMX=$enableval], [DMX=no]) + AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server (default: yes)]), [XVFB=$enableval], [XVFB=yes]) + AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto]) +@@ -991,6 +993,20 @@ XI_INC='-I$(top_srcdir)/Xi' + + AM_CONDITIONAL(XF86UTILS, test "x$XF86UTILS" = xyes) + ++if test "x$XCLIPLIST" = xauto; then ++ if test "x$XORG" = xno; then ++ XCLIPLIST=no ++ else ++ PKG_CHECK_MODULES([XCLIPLIST], [xcliplistproto xcliplist], [XCLIPLIST=yes], [XCLIPLIST=no]) ++ fi ++fi ++AM_CONDITIONAL(XCLIPLIST, [test "x$XCLIPLIST" = xyes]) ++if test "x$XCLIPLIST" = xyes; then ++ AC_DEFINE(XCLIPLIST, 1, [Support XClipList extension]) ++ REQUIRED_MODULES="$REQUIRED_MODULES xcliplistproto" ++ XCLIPLIST_LIB='$(top_builddir)/xcliplist/libxcliplist.la' ++fi ++ + AC_DEFINE(SHAPE, 1, [Support SHAPE extension]) + + AC_DEFINE(XKB, 1, [Build XKB]) +@@ -1186,6 +1202,40 @@ dnl ------------------------------------ + dnl DDX section. + dnl --------------------------------------------------------------------------- + ++dnl VNC DDX ++ ++AC_MSG_CHECKING([whether to build Xvnc DDX]) ++PKG_CHECK_MODULES([VNCMODULES], [xmuu xext x11 xrender xfont xi vncproto xau $XDMCP_MODULES $PIXMAN], [have_vnc=yes], [have_vnc=no]) ++if test "x$VNC" = xauto; then ++ VNC="$have_vnc" ++fi ++AC_MSG_RESULT([$VNC]) ++AM_CONDITIONAL(VNC, [test "x$VNC" = xyes]) ++ ++if test "x$VNC" = xyes; then ++ if test "x$have_vnc" = xno; then ++ AC_MSG_ERROR([Xvnc build explicitly requested, but required ++ modules not found.]) ++ fi ++ XVNC_CFLAGS="-DVNCSERVER -DHAVE_XVNC_CONFIG_H" ++ AC_SUBST([XVNC_CFLAGS]) ++ VNC_INCLUDES="$XEXT_INC $RENDER_INC $XTRAP_INC $RECORD_INC" ++ XVNC_LIBS="$CONFIG_LIB $XSERVER_LIBS $FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $XPSTUBS_LIB $CWRAP_LIB $OS_LIB $LIBS" ++ AC_SUBST([XVNC_LIBS]) ++ ++ if test "x$GLX" = xyes; then ++ PKG_CHECK_MODULES([GL], [glproto]) ++ fi ++ PKG_CHECK_MODULES([XVNCCONFIG_DEP], [xaw7 xmu xt xpm x11]) ++ AC_SUBST(XVNCCONFIG_DEP_CFLAGS) ++ AC_SUBST(XVNCCONFIG_DEP_LIBS) ++ ${CONFIG_SHELL-/bin/sh} $srcdir/hw/vnc/symlink-vnc.sh \ ++ $srcdir/hw/vnc $srcdir/hw/xfree86/vnc && \ ++ ${CONFIG_SHELL-/bin/sh} $srcdir/hw/vnc/symlink-vnc.sh \ ++ $srcdir/hw/vnc $srcdir/hw/dmx/vnc || \ ++ AC_MSG_ERROR([Failed symlinking VNC sources]) ++fi ++ + dnl Xvfb DDX + + AC_MSG_CHECKING([whether to build Xvfb DDX]) +@@ -1828,6 +1878,7 @@ Xext/Makefile + Xi/Makefile + xfixes/Makefile + exa/Makefile ++xcliplist/Makefile + hw/Makefile + hw/xfree86/Makefile + hw/xfree86/common/Makefile +@@ -1862,6 +1913,7 @@ hw/xfree86/ramdac/Makefile + hw/xfree86/shadowfb/Makefile + hw/xfree86/vbe/Makefile + hw/xfree86/vgahw/Makefile ++hw/xfree86/vnc/Makefile + hw/xfree86/x86emu/Makefile + hw/xfree86/xaa/Makefile + hw/xfree86/xf8_16bpp/Makefile +@@ -1873,8 +1925,10 @@ hw/dmx/doc/Makefile + hw/dmx/examples/Makefile + hw/dmx/input/Makefile + hw/dmx/glxProxy/Makefile ++hw/dmx/vnc/Makefile + hw/dmx/Makefile + hw/vfb/Makefile ++hw/vnc/Makefile + hw/xnest/Makefile + hw/xwin/Makefile + hw/xquartz/Makefile +Index: xorg-server-1.6.3/hw/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/Makefile.am ++++ xorg-server-1.6.3/hw/Makefile.am +@@ -22,6 +22,10 @@ if KDRIVE + KDRIVE_SUBDIRS = kdrive + endif + ++if VNC ++VNC_SUBDIRS = vnc ++endif ++ + if XQUARTZ + XQUARTZ_SUBDIRS = xquartz + endif +@@ -32,10 +36,11 @@ SUBDIRS = \ + $(XVFB_SUBDIRS) \ + $(XNEST_SUBDIRS) \ + $(DMX_SUBDIRS) \ ++ $(VNC_SUBDIRS) \ + $(KDRIVE_SUBDIRS) \ + $(XQUARTZ_SUBDIRS) + +-DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive ++DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive vnc + + relink: + for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink ; done +Index: xorg-server-1.6.3/hw/dmx/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/Makefile.am ++++ xorg-server-1.6.3/hw/dmx/Makefile.am @@ -1,6 +1,6 @@ -DIST_SUBDIRS = input config glxProxy examples doc +DIST_SUBDIRS = input vnc config glxProxy examples doc @@ -38,10 +164,10 @@ index 8457aea..e7cf89f 100644 bin_PROGRAMS = Xdmx if XINERAMA -diff --git a/hw/dmx/dmx-config.h b/hw/dmx/dmx-config.h -index 343fdab..9f7ca47 100644 ---- a/hw/dmx/dmx-config.h -+++ b/hw/dmx/dmx-config.h +Index: xorg-server-1.6.3/hw/dmx/dmx-config.h +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/dmx-config.h ++++ xorg-server-1.6.3/hw/dmx/dmx-config.h @@ -72,6 +72,9 @@ /* Enable the DMX extension */ #define DMXEXT @@ -50,12 +176,12 @@ index 343fdab..9f7ca47 100644 +#define DMXVNC 1 + /* Disable the extensions that are not currently supported */ - #undef BEZIER - #undef PEXEXT -diff --git a/hw/dmx/dmxinit.c b/hw/dmx/dmxinit.c -index 29dc005..f313e7e 100644 ---- a/hw/dmx/dmxinit.c -+++ b/hw/dmx/dmxinit.c + #undef MULTIBUFFER + #undef XV +Index: xorg-server-1.6.3/hw/dmx/dmxinit.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/dmxinit.c ++++ xorg-server-1.6.3/hw/dmx/dmxinit.c @@ -77,6 +77,10 @@ extern void GlxSetVisualConfigs( ); #endif /* GLXEXT */ @@ -67,7 +193,7 @@ index 29dc005..f313e7e 100644 /* Global variables available to all Xserver/hw/dmx routines. */ int dmxNumScreens; DMXScreenInfo *dmxScreens; -@@ -812,6 +816,9 @@ void InitOutput(ScreenInfo *pScreenInfo, int argc, char *argv[]) +@@ -805,6 +809,9 @@ void InitOutput(ScreenInfo *pScreenInfo, dmxLog(dmxInfo, "Shadow framebuffer support %s\n", dmxShadowFB ? "enabled" : "disabled"); @@ -77,7 +203,7 @@ index 29dc005..f313e7e 100644 } /* RATS: Assuming the fp string (which comes from the command-line argv -@@ -1045,3 +1052,14 @@ void ddxUseMsg(void) +@@ -1031,3 +1038,14 @@ void ddxUseMsg(void) ErrorF(" Ctrl-Alt-q Quit (core devices only)\n"); ErrorF(" Ctrl-Alt-F* Switch to VC (local only)\n"); } @@ -92,11 +218,11 @@ index 29dc005..f313e7e 100644 + return tp.tv_sec * 1000 + tp.tv_usec / 1000; +} +#endif -diff --git a/hw/dmx/dmxsync.c b/hw/dmx/dmxsync.c -index c1aa431..2498a38 100644 ---- a/hw/dmx/dmxsync.c -+++ b/hw/dmx/dmxsync.c -@@ -99,9 +99,16 @@ static void dmxSyncBlockHandler(pointer blockData, OSTimePtr pTimeout, +Index: xorg-server-1.6.3/hw/dmx/dmxsync.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/dmxsync.c ++++ xorg-server-1.6.3/hw/dmx/dmxsync.c +@@ -99,9 +99,16 @@ static void dmxSyncBlockHandler(pointer TimerForce(dmxSyncTimer); } @@ -113,23 +239,23 @@ index c1aa431..2498a38 100644 } /** Request the XSync() batching optimization with the specified \a -diff --git a/hw/dmx/input/Makefile.am b/hw/dmx/input/Makefile.am -index da8de05..1969a0c 100644 ---- a/hw/dmx/input/Makefile.am -+++ b/hw/dmx/input/Makefile.am +Index: xorg-server-1.6.3/hw/dmx/input/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/input/Makefile.am ++++ xorg-server-1.6.3/hw/dmx/input/Makefile.am @@ -65,6 +65,7 @@ AM_CFLAGS = $(DIX_CFLAGS) \ - -I$(top_srcdir)/hw/xfree86/common \ + -I$(top_srcdir)/hw/dmx \ $(GLX_INCS) \ -DHAVE_DMX_CONFIG_H \ + -DDMXVNC=1 \ $(GLX_DEFS) \ @DMXMODULES_CFLAGS@ -diff --git a/hw/dmx/input/dmxcommon.c b/hw/dmx/input/dmxcommon.c -index e77bb79..0866c84 100644 ---- a/hw/dmx/input/dmxcommon.c -+++ b/hw/dmx/input/dmxcommon.c -@@ -655,7 +655,6 @@ void dmxCommonRestoreState(pointer private) +Index: xorg-server-1.6.3/hw/dmx/input/dmxcommon.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/input/dmxcommon.c ++++ xorg-server-1.6.3/hw/dmx/input/dmxcommon.c +@@ -655,7 +655,6 @@ void dmxCommonRestoreState(pointer priva dmxLogInput(dmxInput, "Keyboard busy, waiting\n"); else dmxLogInput(dmxInput, "Keyboard error, waiting\n"); @@ -137,13 +263,46 @@ index e77bb79..0866c84 100644 /* Don't generate X11 protocol for a bit */ for (tmp = GetTimeInMillis(); GetTimeInMillis() - tmp < 250;) { usleep(250); /* This ends up sleeping only until -diff --git a/hw/dmx/input/dmxinputinit.c b/hw/dmx/input/dmxinputinit.c -index fd4eeaa..7de9546 100644 -diff --git a/hw/dmx/input/dmxinputinit.h b/hw/dmx/input/dmxinputinit.h -index 6f491ed..e6297f0 100644 ---- a/hw/dmx/input/dmxinputinit.h -+++ b/hw/dmx/input/dmxinputinit.h -@@ -290,4 +290,9 @@ extern int dmxInputAttachConsole(const char *name, int isCore, +Index: xorg-server-1.6.3/hw/dmx/input/dmxinputinit.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/input/dmxinputinit.c ++++ xorg-server-1.6.3/hw/dmx/input/dmxinputinit.c +@@ -391,6 +391,10 @@ static int dmxKeyboardOn(DeviceIntPtr pD + DevicePtr pDev = &pDevice->public; + #endif + ++#ifdef DMXVNC ++ vncSetKeyboardDevice(pDevice); ++#endif ++ + #ifdef XKB + if (noXkbExtension) { + #endif +@@ -476,6 +480,9 @@ static int dmxDeviceOnOff(DeviceIntPtr p + break; + } + if (info.keyClass) { ++#ifdef DMXVNC ++ vncSetKeyboardDevice(pDevice); ++#endif + DevicePtr pDev = (DevicePtr) pDevice; + InitKeyboardDeviceStruct(pDev, + &info.keySyms, +@@ -512,6 +519,9 @@ static int dmxDeviceOnOff(DeviceIntPtr p + info.res[i+1], info.minres[i+1], + info.maxres[i+1]); + } ++#ifdef DMXVNC ++ vncSetPointerDevice(pDevice); ++#endif + } + if (info.focusClass) InitFocusClassDeviceStruct(pDevice); + if (info.proximityClass) InitProximityClassDeviceStruct(pDevice); +Index: xorg-server-1.6.3/hw/dmx/input/dmxinputinit.h +=================================================================== +--- xorg-server-1.6.3.orig/hw/dmx/input/dmxinputinit.h ++++ xorg-server-1.6.3/hw/dmx/input/dmxinputinit.h +@@ -290,4 +290,9 @@ extern int dmxInputAttachConsol extern int dmxInputAttachBackend(int physicalScreen, int isCore, int *id); @@ -153,11 +312,10 @@ index 6f491ed..e6297f0 100644 +#endif + #endif -diff --git a/hw/dmx/vnc/.gitignore b/hw/dmx/vnc/.gitignore -new file mode 100644 -index 0000000..d14621f +Index: xorg-server-1.6.3/hw/dmx/vnc/.gitignore +=================================================================== --- /dev/null -+++ b/hw/dmx/vnc/.gitignore ++++ xorg-server-1.6.3/hw/dmx/vnc/.gitignore @@ -0,0 +1,36 @@ +auth.c +cmap.c @@ -195,11 +353,10 @@ index 0000000..d14621f +vncext.c +xistubs.c +zlib.c -diff --git a/hw/dmx/vnc/Makefile.am b/hw/dmx/vnc/Makefile.am -new file mode 100644 -index 0000000..48c07bd +Index: xorg-server-1.6.3/hw/dmx/vnc/Makefile.am +=================================================================== --- /dev/null -+++ b/hw/dmx/vnc/Makefile.am ++++ xorg-server-1.6.3/hw/dmx/vnc/Makefile.am @@ -0,0 +1,43 @@ +noinst_LIBRARIES = libdmxvnc.a + @@ -244,11 +401,10 @@ index 0000000..48c07bd + @DMXMODULES_CFLAGS@ + +###EXTRA_DIST = dmxdetach.c -diff --git a/hw/dmx/vnc/vncInit.c b/hw/dmx/vnc/vncInit.c -new file mode 100644 -index 0000000..5fdf647 +Index: xorg-server-1.6.3/hw/dmx/vnc/vncInit.c +=================================================================== --- /dev/null -+++ b/hw/dmx/vnc/vncInit.c ++++ xorg-server-1.6.3/hw/dmx/vnc/vncInit.c @@ -0,0 +1,453 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -703,11 +859,10 @@ index 0000000..5fdf647 + rfbCheckFds(pScreen); + httpCheckFds(pScreen); +} -diff --git a/hw/dmx/vnc/vncint.h b/hw/dmx/vnc/vncint.h -new file mode 100644 -index 0000000..afa84f8 +Index: xorg-server-1.6.3/hw/dmx/vnc/vncint.h +=================================================================== --- /dev/null -+++ b/hw/dmx/vnc/vncint.h ++++ xorg-server-1.6.3/hw/dmx/vnc/vncint.h @@ -0,0 +1,153 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -862,11 +1017,10 @@ index 0000000..afa84f8 + +#endif /* _VNCINT_H_ */ + -diff --git a/hw/vnc/LICENCE.TXT b/hw/vnc/LICENCE.TXT -new file mode 100644 -index 0000000..ae3b531 +Index: xorg-server-1.6.3/hw/vnc/LICENCE.TXT +=================================================================== --- /dev/null -+++ b/hw/vnc/LICENCE.TXT ++++ xorg-server-1.6.3/hw/vnc/LICENCE.TXT @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 @@ -1208,11 +1362,10 @@ index 0000000..ae3b531 +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. -diff --git a/hw/vnc/Makefile.am b/hw/vnc/Makefile.am -new file mode 100644 -index 0000000..9bf90ec +Index: xorg-server-1.6.3/hw/vnc/Makefile.am +=================================================================== --- /dev/null -+++ b/hw/vnc/Makefile.am ++++ xorg-server-1.6.3/hw/vnc/Makefile.am @@ -0,0 +1,54 @@ +# XXX This Makefile.am probably needs some work. + @@ -1268,11 +1421,10 @@ index 0000000..9bf90ec + +relink: + rm -f Xvnc && $(MAKE) Xvnc -diff --git a/hw/vnc/README b/hw/vnc/README -new file mode 100644 -index 0000000..d65d560 +Index: xorg-server-1.6.3/hw/vnc/README +=================================================================== --- /dev/null -+++ b/hw/vnc/README ++++ xorg-server-1.6.3/hw/vnc/README @@ -0,0 +1,14 @@ + +This is the directory containing the code specific to the TightVNC X server (Xvnc). @@ -1288,11 +1440,10 @@ index 0000000..d65d560 + +Moved to X.org modular tree by Brian Paul. + -diff --git a/hw/vnc/auth.c b/hw/vnc/auth.c -new file mode 100644 -index 0000000..f91a1ed +Index: xorg-server-1.6.3/hw/vnc/auth.c +=================================================================== --- /dev/null -+++ b/hw/vnc/auth.c ++++ xorg-server-1.6.3/hw/vnc/auth.c @@ -0,0 +1,566 @@ +/* + * auth.c - deal with authentication. @@ -1860,11 +2011,10 @@ index 0000000..f91a1ed + return pVNC->rfbAuthTooManyTries; +} + -diff --git a/hw/vnc/cmap.c b/hw/vnc/cmap.c -new file mode 100644 -index 0000000..2e4514a +Index: xorg-server-1.6.3/hw/vnc/cmap.c +=================================================================== --- /dev/null -+++ b/hw/vnc/cmap.c ++++ xorg-server-1.6.3/hw/vnc/cmap.c @@ -0,0 +1,166 @@ +/* + * cmap.c @@ -2032,11 +2182,10 @@ index 0000000..2e4514a + pmap->pScreen->StoreColors = rfbStoreColors; +#endif +} -diff --git a/hw/vnc/corre.c b/hw/vnc/corre.c -new file mode 100644 -index 0000000..1a9b4d5 +Index: xorg-server-1.6.3/hw/vnc/corre.c +=================================================================== --- /dev/null -+++ b/hw/vnc/corre.c ++++ xorg-server-1.6.3/hw/vnc/corre.c @@ -0,0 +1,353 @@ +/* + * corre.c @@ -2391,11 +2540,10 @@ index 0000000..1a9b4d5 + + return maxclr; +} -diff --git a/hw/vnc/cursor.c b/hw/vnc/cursor.c -new file mode 100644 -index 0000000..d355e03 +Index: xorg-server-1.6.3/hw/vnc/cursor.c +=================================================================== --- /dev/null -+++ b/hw/vnc/cursor.c ++++ xorg-server-1.6.3/hw/vnc/cursor.c @@ -0,0 +1,407 @@ +/* + * cursor.c - support for cursor shape updates. @@ -2804,11 +2952,10 @@ index 0000000..d355e03 +DEFINE_RICH_ENCODE(16) +DEFINE_RICH_ENCODE(32) + -diff --git a/hw/vnc/cutpaste.c b/hw/vnc/cutpaste.c -new file mode 100644 -index 0000000..6f57aca +Index: xorg-server-1.6.3/hw/vnc/cutpaste.c +=================================================================== --- /dev/null -+++ b/hw/vnc/cutpaste.c ++++ xorg-server-1.6.3/hw/vnc/cutpaste.c @@ -0,0 +1,87 @@ +/* + * cutpaste.c - routines to deal with cut & paste buffers / selection. @@ -2897,11 +3044,10 @@ index 0000000..6f57aca + if (!inSetXCutText) + rfbSendServerCutText(str, len); +} -diff --git a/hw/vnc/d3des.c b/hw/vnc/d3des.c -new file mode 100644 -index 0000000..a4e145f +Index: xorg-server-1.6.3/hw/vnc/d3des.c +=================================================================== --- /dev/null -+++ b/hw/vnc/d3des.c ++++ xorg-server-1.6.3/hw/vnc/d3des.c @@ -0,0 +1,437 @@ +/* + * This is D3DES (V5.09) by Richard Outerbridge with the double and @@ -3340,11 +3486,10 @@ index 0000000..a4e145f + * + * d3des V5.0a rwo 9208.07 18:44 Graven Imagery + **********************************************************************/ -diff --git a/hw/vnc/d3des.h b/hw/vnc/d3des.h -new file mode 100644 -index 0000000..ea3da44 +Index: xorg-server-1.6.3/hw/vnc/d3des.h +=================================================================== --- /dev/null -+++ b/hw/vnc/d3des.h ++++ xorg-server-1.6.3/hw/vnc/d3des.h @@ -0,0 +1,51 @@ +/* + * This is D3DES (V5.09) by Richard Outerbridge with the double and @@ -3397,11 +3542,10 @@ index 0000000..ea3da44 + +/* d3des.h V5.09 rwo 9208.04 15:06 Graven Imagery + ********************************************************************/ -diff --git a/hw/vnc/dispcur.c b/hw/vnc/dispcur.c -new file mode 100644 -index 0000000..0ccf0a7 +Index: xorg-server-1.6.3/hw/vnc/dispcur.c +=================================================================== --- /dev/null -+++ b/hw/vnc/dispcur.c ++++ xorg-server-1.6.3/hw/vnc/dispcur.c @@ -0,0 +1,792 @@ +/* + * dispcur.c @@ -4195,11 +4339,10 @@ index 0000000..0ccf0a7 + 0, 0, w, h, x, y); + return TRUE; +} -diff --git a/hw/vnc/dpmsstubs.c b/hw/vnc/dpmsstubs.c -new file mode 100644 -index 0000000..48ee545 +Index: xorg-server-1.6.3/hw/vnc/dpmsstubs.c +=================================================================== --- /dev/null -+++ b/hw/vnc/dpmsstubs.c ++++ xorg-server-1.6.3/hw/vnc/dpmsstubs.c @@ -0,0 +1,52 @@ +/* $Xorg: dpmsstubs.c,v 1.3 2000/08/17 19:47:56 cpqbld Exp $ */ +/***************************************************************** @@ -4253,11 +4396,10 @@ index 0000000..48ee545 +{ + +} -diff --git a/hw/vnc/draw.c b/hw/vnc/draw.c -new file mode 100644 -index 0000000..631aa20 +Index: xorg-server-1.6.3/hw/vnc/draw.c +=================================================================== --- /dev/null -+++ b/hw/vnc/draw.c ++++ xorg-server-1.6.3/hw/vnc/draw.c @@ -0,0 +1,2021 @@ +/* + * draw.c - drawing routines for the RFB X server. This is a set of @@ -6280,11 +6422,10 @@ index 0000000..631aa20 + VNCSCREENPTR(pScreen); + SCHEDULE_FB_UPDATE(pScreen, pVNC); +} -diff --git a/hw/vnc/hextile.c b/hw/vnc/hextile.c -new file mode 100644 -index 0000000..eb5e281 +Index: xorg-server-1.6.3/hw/vnc/hextile.c +=================================================================== --- /dev/null -+++ b/hw/vnc/hextile.c ++++ xorg-server-1.6.3/hw/vnc/hextile.c @@ -0,0 +1,350 @@ +/* + * hextile.c @@ -6636,11 +6777,10 @@ index 0000000..eb5e281 +DEFINE_SEND_HEXTILES(8) +DEFINE_SEND_HEXTILES(16) +DEFINE_SEND_HEXTILES(32) -diff --git a/hw/vnc/httpd.c b/hw/vnc/httpd.c -new file mode 100644 -index 0000000..5f56ad6 +Index: xorg-server-1.6.3/hw/vnc/httpd.c +=================================================================== --- /dev/null -+++ b/hw/vnc/httpd.c ++++ xorg-server-1.6.3/hw/vnc/httpd.c @@ -0,0 +1,519 @@ +/* + * httpd.c - a simple HTTP server @@ -7161,11 +7301,10 @@ index 0000000..5f56ad6 + return TRUE; +} + -diff --git a/hw/vnc/init.c b/hw/vnc/init.c -new file mode 100644 -index 0000000..a166358 +Index: xorg-server-1.6.3/hw/vnc/init.c +=================================================================== --- /dev/null -+++ b/hw/vnc/init.c ++++ xorg-server-1.6.3/hw/vnc/init.c @@ -0,0 +1,1078 @@ +/* + * init.c @@ -8245,11 +8384,10 @@ index 0000000..a166358 + rfbLog(""); + perror(str); +} -diff --git a/hw/vnc/kbdptr.c b/hw/vnc/kbdptr.c -new file mode 100644 -index 0000000..de31920 +Index: xorg-server-1.6.3/hw/vnc/kbdptr.c +=================================================================== --- /dev/null -+++ b/hw/vnc/kbdptr.c ++++ xorg-server-1.6.3/hw/vnc/kbdptr.c @@ -0,0 +1,458 @@ +/* + * kbdptr.c - deal with keyboard and pointer device over TCP & UDP. @@ -8709,11 +8847,10 @@ index 0000000..de31920 + break; + } +} -diff --git a/hw/vnc/keyboard.h b/hw/vnc/keyboard.h -new file mode 100644 -index 0000000..ab5b1b3 +Index: xorg-server-1.6.3/hw/vnc/keyboard.h +=================================================================== --- /dev/null -+++ b/hw/vnc/keyboard.h ++++ xorg-server-1.6.3/hw/vnc/keyboard.h @@ -0,0 +1,167 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -8882,11 +9019,10 @@ index 0000000..ab5b1b3 +}; + +#define N_PREDEFINED_KEYS (sizeof(map) / (sizeof(KeySym) * GLYPHS_PER_KEY)) -diff --git a/hw/vnc/loginauth.c b/hw/vnc/loginauth.c -new file mode 100644 -index 0000000..7fd5304 +Index: xorg-server-1.6.3/hw/vnc/loginauth.c +=================================================================== --- /dev/null -+++ b/hw/vnc/loginauth.c ++++ xorg-server-1.6.3/hw/vnc/loginauth.c @@ -0,0 +1,143 @@ +/* + * loginauth.c - deal with login-style Unix authentication. @@ -9031,11 +9167,10 @@ index 0000000..7fd5304 + cl->state = RFB_INITIALISATION; +} + -diff --git a/hw/vnc/rdp.c b/hw/vnc/rdp.c -new file mode 100644 -index 0000000..867e527 +Index: xorg-server-1.6.3/hw/vnc/rdp.c +=================================================================== --- /dev/null -+++ b/hw/vnc/rdp.c ++++ xorg-server-1.6.3/hw/vnc/rdp.c @@ -0,0 +1,147 @@ +/* + * Copyright (C) 2004 Alan Hourihane. All Rights Reserved. @@ -9184,11 +9319,10 @@ index 0000000..867e527 + rdpNewClient(pScreen, sock); + } +} -diff --git a/hw/vnc/rfb.h b/hw/vnc/rfb.h -new file mode 100644 -index 0000000..8a6d1ec +Index: xorg-server-1.6.3/hw/vnc/rfb.h +=================================================================== --- /dev/null -+++ b/hw/vnc/rfb.h ++++ xorg-server-1.6.3/hw/vnc/rfb.h @@ -0,0 +1,751 @@ +/* + * rfb.h - header file for RFB DDX implementation. @@ -9941,11 +10075,10 @@ index 0000000..8a6d1ec + + +#endif /* RFB_H_INCLUDED */ -diff --git a/hw/vnc/rfbkeyb.c b/hw/vnc/rfbkeyb.c -new file mode 100644 -index 0000000..2405e66 +Index: xorg-server-1.6.3/hw/vnc/rfbkeyb.c +=================================================================== --- /dev/null -+++ b/hw/vnc/rfbkeyb.c ++++ xorg-server-1.6.3/hw/vnc/rfbkeyb.c @@ -0,0 +1,405 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -10352,11 +10485,10 @@ index 0000000..2405e66 + +#endif /* XFree86LOADER */ +#endif -diff --git a/hw/vnc/rfbmouse.c b/hw/vnc/rfbmouse.c -new file mode 100644 -index 0000000..40e6ec6 +Index: xorg-server-1.6.3/hw/vnc/rfbmouse.c +=================================================================== --- /dev/null -+++ b/hw/vnc/rfbmouse.c ++++ xorg-server-1.6.3/hw/vnc/rfbmouse.c @@ -0,0 +1,260 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -10618,11 +10750,10 @@ index 0000000..40e6ec6 + +#endif /* XFree86LOADER */ +#endif -diff --git a/hw/vnc/rfbproto.h b/hw/vnc/rfbproto.h -new file mode 100644 -index 0000000..5ed86c5 +Index: xorg-server-1.6.3/hw/vnc/rfbproto.h +=================================================================== --- /dev/null -+++ b/hw/vnc/rfbproto.h ++++ xorg-server-1.6.3/hw/vnc/rfbproto.h @@ -0,0 +1,1362 @@ +/* + * Copyright (C) 2000-2004 Constantin Kaplinsky. All Rights Reserved. @@ -11986,11 +12117,10 @@ index 0000000..5ed86c5 + rfbChromiumStopMsg csd; + rfbChromiumExposeMsg cse; +} rfbClientToServerMsg; -diff --git a/hw/vnc/rfbserver.c b/hw/vnc/rfbserver.c -new file mode 100644 -index 0000000..b93087f +Index: xorg-server-1.6.3/hw/vnc/rfbserver.c +=================================================================== --- /dev/null -+++ b/hw/vnc/rfbserver.c ++++ xorg-server-1.6.3/hw/vnc/rfbserver.c @@ -0,0 +1,2308 @@ +/* + * rfbserver.c - deal with server-side of the RFB protocol. @@ -14300,11 +14430,10 @@ index 0000000..b93087f + rfbDisconnectUDPSock(pScreen); + } +} -diff --git a/hw/vnc/rre.c b/hw/vnc/rre.c -new file mode 100644 -index 0000000..09043c8 +Index: xorg-server-1.6.3/hw/vnc/rre.c +=================================================================== --- /dev/null -+++ b/hw/vnc/rre.c ++++ xorg-server-1.6.3/hw/vnc/rre.c @@ -0,0 +1,324 @@ +/* + * rre.c @@ -14630,11 +14759,10 @@ index 0000000..09043c8 + + return maxclr; +} -diff --git a/hw/vnc/sockets.c b/hw/vnc/sockets.c -new file mode 100644 -index 0000000..7eff68c +Index: xorg-server-1.6.3/hw/vnc/sockets.c +=================================================================== --- /dev/null -+++ b/hw/vnc/sockets.c ++++ xorg-server-1.6.3/hw/vnc/sockets.c @@ -0,0 +1,656 @@ +/* + * sockets.c - deal with TCP & UDP sockets. @@ -15292,11 +15420,10 @@ index 0000000..7eff68c + return TRUE; +} +#endif -diff --git a/hw/vnc/sprite.c b/hw/vnc/sprite.c -new file mode 100644 -index 0000000..c1e8685 +Index: xorg-server-1.6.3/hw/vnc/sprite.c +=================================================================== --- /dev/null -+++ b/hw/vnc/sprite.c ++++ xorg-server-1.6.3/hw/vnc/sprite.c @@ -0,0 +1,2279 @@ +/* + * sprite.c @@ -17577,11 +17704,10 @@ index 0000000..c1e8685 + *py = pScreenPriv->y; +} + -diff --git a/hw/vnc/sprite.h b/hw/vnc/sprite.h -new file mode 100644 -index 0000000..ed34726 +Index: xorg-server-1.6.3/hw/vnc/sprite.h +=================================================================== --- /dev/null -+++ b/hw/vnc/sprite.h ++++ xorg-server-1.6.3/hw/vnc/sprite.h @@ -0,0 +1,141 @@ +/* + * sprite.h @@ -17724,11 +17850,10 @@ index 0000000..ed34726 + int * /*py*/ +#endif +); -diff --git a/hw/vnc/spritest.h b/hw/vnc/spritest.h -new file mode 100644 -index 0000000..8593ee0 +Index: xorg-server-1.6.3/hw/vnc/spritest.h +=================================================================== --- /dev/null -+++ b/hw/vnc/spritest.h ++++ xorg-server-1.6.3/hw/vnc/spritest.h @@ -0,0 +1,138 @@ +/* + * spritest.h @@ -17868,11 +17993,10 @@ index 0000000..8593ee0 + +#define LINE_OVERLAP(pCbox,x1,y1,x2,y2,lw2) \ + BOX_OVERLAP((pCbox), (x1)-(lw2), (y1)-(lw2), (x2)+(lw2), (y2)+(lw2)) -diff --git a/hw/vnc/stats.c b/hw/vnc/stats.c -new file mode 100644 -index 0000000..83366ec +Index: xorg-server-1.6.3/hw/vnc/stats.c +=================================================================== --- /dev/null -+++ b/hw/vnc/stats.c ++++ xorg-server-1.6.3/hw/vnc/stats.c @@ -0,0 +1,117 @@ +/* + * stats.c @@ -17991,11 +18115,10 @@ index 0000000..83366ec + cl->rfbLastRectBytesSent)); + } +} -diff --git a/hw/vnc/symlink-vnc.sh b/hw/vnc/symlink-vnc.sh -new file mode 100755 -index 0000000..b4347a1 +Index: xorg-server-1.6.3/hw/vnc/symlink-vnc.sh +=================================================================== --- /dev/null -+++ b/hw/vnc/symlink-vnc.sh ++++ xorg-server-1.6.3/hw/vnc/symlink-vnc.sh @@ -0,0 +1,198 @@ +#!/bin/sh + @@ -18195,11 +18318,10 @@ index 0000000..b4347a1 +} + +main $1 $2 -diff --git a/hw/vnc/tableinitcmtemplate.c b/hw/vnc/tableinitcmtemplate.c -new file mode 100644 -index 0000000..c65c3d2 +Index: xorg-server-1.6.3/hw/vnc/tableinitcmtemplate.c +=================================================================== --- /dev/null -+++ b/hw/vnc/tableinitcmtemplate.c ++++ xorg-server-1.6.3/hw/vnc/tableinitcmtemplate.c @@ -0,0 +1,93 @@ +/* + * tableinitcmtemplate.c - template for initialising lookup tables for @@ -18294,11 +18416,10 @@ index 0000000..c65c3d2 +#undef OUT_T +#undef SwapOUT +#undef rfbInitColourMapSingleTableOUT -diff --git a/hw/vnc/tableinittctemplate.c b/hw/vnc/tableinittctemplate.c -new file mode 100644 -index 0000000..1af8a06 +Index: xorg-server-1.6.3/hw/vnc/tableinittctemplate.c +=================================================================== --- /dev/null -+++ b/hw/vnc/tableinittctemplate.c ++++ xorg-server-1.6.3/hw/vnc/tableinittctemplate.c @@ -0,0 +1,146 @@ +/* + * tableinittctemplate.c - template for initialising lookup tables for @@ -18446,11 +18567,10 @@ index 0000000..1af8a06 +#undef rfbInitTrueColourSingleTableOUT +#undef rfbInitTrueColourRGBTablesOUT +#undef rfbInitOneRGBTableOUT -diff --git a/hw/vnc/tabletranstemplate.c b/hw/vnc/tabletranstemplate.c -new file mode 100644 -index 0000000..d8baa44 +Index: xorg-server-1.6.3/hw/vnc/tabletranstemplate.c +=================================================================== --- /dev/null -+++ b/hw/vnc/tabletranstemplate.c ++++ xorg-server-1.6.3/hw/vnc/tabletranstemplate.c @@ -0,0 +1,135 @@ +/* + * tabletranstemplate.c - template for translation using lookup tables. @@ -18587,11 +18707,10 @@ index 0000000..d8baa44 +#undef OUT_T +#undef rfbTranslateWithSingleTableINtoOUT +#undef rfbTranslateWithRGBTablesINtoOUT -diff --git a/hw/vnc/tight.c b/hw/vnc/tight.c -new file mode 100644 -index 0000000..bbe1744 +Index: xorg-server-1.6.3/hw/vnc/tight.c +=================================================================== --- /dev/null -+++ b/hw/vnc/tight.c ++++ xorg-server-1.6.3/hw/vnc/tight.c @@ -0,0 +1,1827 @@ +/* + * tight.c @@ -20420,11 +20539,10 @@ index 0000000..bbe1744 + cinfo->dest = &jpegDstManager; +} + -diff --git a/hw/vnc/translate.c b/hw/vnc/translate.c -new file mode 100644 -index 0000000..b9ab53e +Index: xorg-server-1.6.3/hw/vnc/translate.c +=================================================================== --- /dev/null -+++ b/hw/vnc/translate.c ++++ xorg-server-1.6.3/hw/vnc/translate.c @@ -0,0 +1,502 @@ +/* + * translate.c - translate between different pixel formats @@ -20928,11 +21046,10 @@ index 0000000..b9ab53e + } + } +} -diff --git a/hw/vnc/vncauth.c b/hw/vnc/vncauth.c -new file mode 100644 -index 0000000..a70cfa5 +Index: xorg-server-1.6.3/hw/vnc/vncauth.c +=================================================================== --- /dev/null -+++ b/hw/vnc/vncauth.c ++++ xorg-server-1.6.3/hw/vnc/vncauth.c @@ -0,0 +1,252 @@ +/* + * Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved. @@ -21186,11 +21303,10 @@ index 0000000..a70cfa5 + des(bytes+i, bytes+i); + } +} -diff --git a/hw/vnc/vncauth.h b/hw/vnc/vncauth.h -new file mode 100644 -index 0000000..adc280b +Index: xorg-server-1.6.3/hw/vnc/vncauth.h +=================================================================== --- /dev/null -+++ b/hw/vnc/vncauth.h ++++ xorg-server-1.6.3/hw/vnc/vncauth.h @@ -0,0 +1,33 @@ +/* + * Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved. @@ -21225,11 +21341,10 @@ index 0000000..adc280b +extern int vncEncryptAndStorePasswd2(char *passwd, char *passwdViewOnly, char *fname); +extern int vncDecryptPasswdFromFile2(char *fname, char *passwdFullControl, char *passwdViewOnly); + -diff --git a/hw/vnc/vncext.c b/hw/vnc/vncext.c -new file mode 100644 -index 0000000..80a3433 +Index: xorg-server-1.6.3/hw/vnc/vncext.c +=================================================================== --- /dev/null -+++ b/hw/vnc/vncext.c ++++ xorg-server-1.6.3/hw/vnc/vncext.c @@ -0,0 +1,800 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -22031,11 +22146,10 @@ index 0000000..80a3433 + (EventSwapPtr)SwapVncChromiumConnectedEvent; +#endif +} /* VncExtensionInit */ -diff --git a/hw/vnc/xistubs.c b/hw/vnc/xistubs.c -new file mode 100644 -index 0000000..011ac9e +Index: xorg-server-1.6.3/hw/vnc/xistubs.c +=================================================================== --- /dev/null -+++ b/hw/vnc/xistubs.c ++++ xorg-server-1.6.3/hw/vnc/xistubs.c @@ -0,0 +1,323 @@ +/* $Xorg: stubs.c,v 1.4 2001/02/09 02:04:35 xorgcvs Exp $ */ + @@ -22360,11 +22474,10 @@ index 0000000..011ac9e + return (BadMatch); + } + } -diff --git a/hw/vnc/zlib.c b/hw/vnc/zlib.c -new file mode 100644 -index 0000000..4863fb4 +Index: xorg-server-1.6.3/hw/vnc/zlib.c +=================================================================== --- /dev/null -+++ b/hw/vnc/zlib.c ++++ xorg-server-1.6.3/hw/vnc/zlib.c @@ -0,0 +1,310 @@ +/* + * zlib.c @@ -22676,15 +22789,81 @@ index 0000000..4863fb4 +} + + -diff --git a/hw/xfree86/Makefile.am b/hw/xfree86/Makefile.am -index 03c2c3a..06329a8 100644 -diff --git a/hw/xfree86/dixmods/Makefile.am b/hw/xfree86/dixmods/Makefile.am -index efc5f4a..98d7302 100644 -diff --git a/hw/xfree86/vnc/.gitignore b/hw/xfree86/vnc/.gitignore -new file mode 100644 -index 0000000..d14621f +Index: xorg-server-1.6.3/hw/xfree86/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/Makefile.am ++++ xorg-server-1.6.3/hw/xfree86/Makefile.am +@@ -4,6 +4,10 @@ if DRI + DRI_SUBDIR = dri + endif + ++if VNC ++VNC_SUBDIR = vnc ++endif ++ + if DRI2 + DRI2_SUBDIR = dri2 + endif +@@ -16,13 +20,13 @@ DOC_SUBDIR = doc + + SUBDIRS = common ddc dummylib i2c x86emu int10 fbdevhw os-support parser \ + ramdac shadowfb vbe vgahw xaa \ +- xf8_16bpp loader dixmods exa modes \ ++ xf8_16bpp loader dixmods exa modes $(VNC_SUBDIR) \ + $(DRI_SUBDIR) $(DRI2_SUBDIR) $(XF86UTILS_SUBDIR) $(DOC_SUBDIR) + + DIST_SUBDIRS = common ddc dummylib i2c x86emu int10 fbdevhw os-support \ + parser ramdac shadowfb vbe vgahw xaa \ + xf8_16bpp loader dixmods dri dri2 exa modes \ +- utils doc ++ utils doc vnc + + bin_PROGRAMS = Xorg + +Index: xorg-server-1.6.3/hw/xfree86/dixmods/Makefile.am +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/dixmods/Makefile.am ++++ xorg-server-1.6.3/hw/xfree86/dixmods/Makefile.am +@@ -10,6 +10,10 @@ if DBE + DBEMOD = libdbe.la + endif + ++if XCLIPLIST ++XCLIPLISTMOD = libxcliplist.la ++endif ++ + if RECORD + RECORDMOD = librecord.la + endif +@@ -21,11 +25,13 @@ module_LTLIBRARIES = libfb.la \ + extsmoduledir = $(moduledir)/extensions + extsmodule_LTLIBRARIES = $(RECORDMOD) \ + $(DBEMOD) \ ++ $(XCLIPLISTMOD) \ + $(GLXMODS) + + AM_CFLAGS = @XORG_CFLAGS@ @DIX_CFLAGS@ + INCLUDES = @XORG_INCS@ \ + -I$(top_srcdir)/dbe \ ++ -I$(top_srcdir)/xcliplist \ + -I$(top_srcdir)/hw/xfree86/loader \ + -I$(top_srcdir)/miext/shadow \ + -I$(top_srcdir)/glx +@@ -34,6 +40,10 @@ libdbe_la_LDFLAGS = -avoid-version + libdbe_la_LIBADD = $(top_builddir)/dbe/libdbe.la + libdbe_la_SOURCES = dbemodule.c + ++libxcliplist_la_LDFLAGS = -avoid-version ++libxcliplist_la_LIBADD = $(top_builddir)/xcliplist/libxcliplist.la ++libxcliplist_la_SOURCES = $(top_srcdir)/xcliplist/cliplistmod.c ++ + libfb_la_LDFLAGS = -avoid-version + libfb_la_LIBADD = $(top_builddir)/fb/libfb.la + libfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c +Index: xorg-server-1.6.3/hw/xfree86/vnc/.gitignore +=================================================================== --- /dev/null -+++ b/hw/xfree86/vnc/.gitignore ++++ xorg-server-1.6.3/hw/xfree86/vnc/.gitignore @@ -0,0 +1,36 @@ +auth.c +cmap.c @@ -22722,11 +22901,10 @@ index 0000000..d14621f +vncext.c +xistubs.c +zlib.c -diff --git a/hw/xfree86/vnc/Makefile.am b/hw/xfree86/vnc/Makefile.am -new file mode 100644 -index 0000000..6f5cd76 +Index: xorg-server-1.6.3/hw/xfree86/vnc/Makefile.am +=================================================================== --- /dev/null -+++ b/hw/xfree86/vnc/Makefile.am ++++ xorg-server-1.6.3/hw/xfree86/vnc/Makefile.am @@ -0,0 +1,51 @@ +AM_CFLAGS = $(DIX_CFLAGS) + @@ -22779,18 +22957,16 @@ index 0000000..6f5cd76 + zlib.c + +#sdk_HEADERS = vncint.h -diff --git a/hw/xfree86/vnc/README b/hw/xfree86/vnc/README -new file mode 100644 -index 0000000..64aa888 +Index: xorg-server-1.6.3/hw/xfree86/vnc/README +=================================================================== --- /dev/null -+++ b/hw/xfree86/vnc/README ++++ xorg-server-1.6.3/hw/xfree86/vnc/README @@ -0,0 +1 @@ +This directory contains the sources for building the vnc.so server extension module. -diff --git a/hw/xfree86/vnc/vncInit.c b/hw/xfree86/vnc/vncInit.c -new file mode 100644 -index 0000000..e07ac8f +Index: xorg-server-1.6.3/hw/xfree86/vnc/vncInit.c +=================================================================== --- /dev/null -+++ b/hw/xfree86/vnc/vncInit.c ++++ xorg-server-1.6.3/hw/xfree86/vnc/vncInit.c @@ -0,0 +1,618 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -23410,11 +23586,10 @@ index 0000000..e07ac8f + return (pointer)TRUE; +} +#endif -diff --git a/hw/xfree86/vnc/vncint.h b/hw/xfree86/vnc/vncint.h -new file mode 100644 -index 0000000..43aeaae +Index: xorg-server-1.6.3/hw/xfree86/vnc/vncint.h +=================================================================== --- /dev/null -+++ b/hw/xfree86/vnc/vncint.h ++++ xorg-server-1.6.3/hw/xfree86/vnc/vncint.h @@ -0,0 +1,151 @@ +/* + * Copyright (C) 2002 Alan Hourihane. All Rights Reserved. @@ -23567,11 +23742,11 @@ index 0000000..43aeaae + +#endif /* _VNC_H_ */ + -diff --git a/mi/miinitext.c b/mi/miinitext.c -index 3c55eeb..4cb6584 100644 ---- a/mi/miinitext.c -+++ b/mi/miinitext.c -@@ -79,6 +79,18 @@ SOFTWARE. +Index: xorg-server-1.6.3/mi/miinitext.c +=================================================================== +--- xorg-server-1.6.3.orig/mi/miinitext.c ++++ xorg-server-1.6.3/mi/miinitext.c +@@ -78,6 +78,18 @@ SOFTWARE. #undef XF86VIDMODE #endif @@ -23590,11 +23765,10 @@ index 3c55eeb..4cb6584 100644 #include "misc.h" #include "extension.h" #include "micmap.h" -diff --git a/xcliplist/Makefile.am b/xcliplist/Makefile.am -new file mode 100644 -index 0000000..3f13acc +Index: xorg-server-1.6.3/xcliplist/Makefile.am +=================================================================== --- /dev/null -+++ b/xcliplist/Makefile.am ++++ xorg-server-1.6.3/xcliplist/Makefile.am @@ -0,0 +1,18 @@ +#noinst_LTLIBRARIES = libxcliplist.la +libxcliplist_la_LTLIBRARIES = libxcliplist.la @@ -23614,11 +23788,10 @@ index 0000000..3f13acc +if XORG +sdk_HEADERS = +endif -diff --git a/xcliplist/cliplist.c b/xcliplist/cliplist.c -new file mode 100644 -index 0000000..290eb79 +Index: xorg-server-1.6.3/xcliplist/cliplist.c +=================================================================== --- /dev/null -+++ b/xcliplist/cliplist.c ++++ xorg-server-1.6.3/xcliplist/cliplist.c @@ -0,0 +1,128 @@ +/* + * Server-side code for the Xcliplist extension @@ -23748,11 +23921,10 @@ index 0000000..290eb79 + XClipListErrorBase = extEntry->errorBase; + } +} -diff --git a/xcliplist/cliplistmod.c b/xcliplist/cliplistmod.c -new file mode 100644 -index 0000000..c365ca2 +Index: xorg-server-1.6.3/xcliplist/cliplistmod.c +=================================================================== --- /dev/null -+++ b/xcliplist/cliplistmod.c ++++ xorg-server-1.6.3/xcliplist/cliplistmod.c @@ -0,0 +1,46 @@ + +#include "../hw/xfree86/common/xf86Module.h" @@ -23800,229 +23972,3 @@ index 0000000..c365ca2 + return (pointer)1; +} + ---- a/configure.ac.orig 2009-02-25 21:04:51.000000000 +0100 -+++ a/configure.ac 2009-03-02 22:15:25.000000000 +0100 -@@ -553,6 +553,8 @@ AC_ARG_ENABLE(xfree86-utils, AS_HELP - - dnl DDXes. - AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) -+AC_ARG_ENABLE(xcliplist, AS_HELP_STRING([--enable-xcliplist], [Build XClipList extension (default: auto)]), [XCLIPLIST=$enableval], [XCLIPLIST=auto]) -+AC_ARG_ENABLE(vnc, AS_HELP_STRING([--enable-vnc], [Build Xvnc server (default: yes)]), [VNC=$enableval], [VNC=auto]) - AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx], [Build DMX server (default: no)]), [DMX=$enableval], [DMX=no]) - AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server (default: yes)]), [XVFB=$enableval], [XVFB=yes]) - AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto]) -@@ -987,6 +989,20 @@ XI_INC='-I$(top_srcdir)/Xi' - - AM_CONDITIONAL(XF86UTILS, test "x$XF86UTILS" = xyes) - -+if test "x$XCLIPLIST" = xauto; then -+ if test "x$XORG" = xno; then -+ XCLIPLIST=no -+ else -+ PKG_CHECK_MODULES([XCLIPLIST], [xcliplistproto xcliplist], [XCLIPLIST=yes], [XCLIPLIST=no]) -+ fi -+fi -+AM_CONDITIONAL(XCLIPLIST, [test "x$XCLIPLIST" = xyes]) -+if test "x$XCLIPLIST" = xyes; then -+ AC_DEFINE(XCLIPLIST, 1, [Support XClipList extension]) -+ REQUIRED_MODULES="$REQUIRED_MODULES xcliplistproto" -+ XCLIPLIST_LIB='$(top_builddir)/xcliplist/libxcliplist.la' -+fi -+ - AC_DEFINE(SHAPE, 1, [Support SHAPE extension]) - - AC_DEFINE(XKB, 1, [Build XKB]) -@@ -1182,6 +1198,40 @@ dnl ------------------------------------ - dnl DDX section. - dnl --------------------------------------------------------------------------- - -+dnl VNC DDX -+ -+AC_MSG_CHECKING([whether to build Xvnc DDX]) -+PKG_CHECK_MODULES([VNCMODULES], [xmuu xext x11 xrender xfont xi vncproto xau $XDMCP_MODULES $PIXMAN], [have_vnc=yes], [have_vnc=no]) -+if test "x$VNC" = xauto; then -+ VNC="$have_vnc" -+fi -+AC_MSG_RESULT([$VNC]) -+AM_CONDITIONAL(VNC, [test "x$VNC" = xyes]) -+ -+if test "x$VNC" = xyes; then -+ if test "x$have_vnc" = xno; then -+ AC_MSG_ERROR([Xvnc build explicitly requested, but required -+ modules not found.]) -+ fi -+ XVNC_CFLAGS="-DVNCSERVER -DHAVE_XVNC_CONFIG_H" -+ AC_SUBST([XVNC_CFLAGS]) -+ VNC_INCLUDES="$XEXT_INC $RENDER_INC $XTRAP_INC $RECORD_INC" -+ XVNC_LIBS="$CONFIG_LIB $XSERVER_LIBS $FB_LIB $MI_LIB $FIXES_LIB $XEXT_LIB $DBE_LIB $XTRAP_LIB $RECORD_LIB $GLX_LIBS $RENDER_LIB $RANDR_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $XPSTUBS_LIB $CWRAP_LIB $OS_LIB $LIBS" -+ AC_SUBST([XVNC_LIBS]) -+ -+ if test "x$GLX" = xyes; then -+ PKG_CHECK_MODULES([GL], [glproto]) -+ fi -+ PKG_CHECK_MODULES([XVNCCONFIG_DEP], [xaw7 xmu xt xpm x11]) -+ AC_SUBST(XVNCCONFIG_DEP_CFLAGS) -+ AC_SUBST(XVNCCONFIG_DEP_LIBS) -+ ${CONFIG_SHELL-/bin/sh} $srcdir/hw/vnc/symlink-vnc.sh \ -+ $srcdir/hw/vnc $srcdir/hw/xfree86/vnc && \ -+ ${CONFIG_SHELL-/bin/sh} $srcdir/hw/vnc/symlink-vnc.sh \ -+ $srcdir/hw/vnc $srcdir/hw/dmx/vnc || \ -+ AC_MSG_ERROR([Failed symlinking VNC sources]) -+fi -+ - dnl Xvfb DDX - - AC_MSG_CHECKING([whether to build Xvfb DDX]) -@@ -1824,6 +1874,7 @@ Xext/Makefile - Xi/Makefile - xfixes/Makefile - exa/Makefile -+xcliplist/Makefile - hw/Makefile - hw/xfree86/Makefile - hw/xfree86/common/Makefile -@@ -1858,6 +1909,7 @@ hw/xfree86/ramdac/Makefile - hw/xfree86/shadowfb/Makefile - hw/xfree86/vbe/Makefile - hw/xfree86/vgahw/Makefile -+hw/xfree86/vnc/Makefile - hw/xfree86/x86emu/Makefile - hw/xfree86/xaa/Makefile - hw/xfree86/xf8_16bpp/Makefile -@@ -1869,8 +1921,10 @@ hw/dmx/doc/Makefile - hw/dmx/examples/Makefile - hw/dmx/input/Makefile - hw/dmx/glxProxy/Makefile -+hw/dmx/vnc/Makefile - hw/dmx/Makefile - hw/vfb/Makefile -+hw/vnc/Makefile - hw/xnest/Makefile - hw/xwin/Makefile - hw/xquartz/Makefile ---- a/hw/Makefile.am.orig 2008-10-13 01:18:43.000000000 +0200 -+++ a/hw/Makefile.am 2009-03-02 22:17:39.000000000 +0100 -@@ -22,6 +22,10 @@ if KDRIVE - KDRIVE_SUBDIRS = kdrive - endif - -+if VNC -+VNC_SUBDIRS = vnc -+endif -+ - if XQUARTZ - XQUARTZ_SUBDIRS = xquartz - endif -@@ -32,10 +36,11 @@ SUBDIRS = \ - $(XVFB_SUBDIRS) \ - $(XNEST_SUBDIRS) \ - $(DMX_SUBDIRS) \ -+ $(VNC_SUBDIRS) \ - $(KDRIVE_SUBDIRS) \ - $(XQUARTZ_SUBDIRS) - --DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive -+DIST_SUBDIRS = dmx xfree86 vfb xnest xwin xquartz kdrive vnc - - relink: - for i in $(SUBDIRS) ; do $(MAKE) -C $$i relink ; done ---- a/hw/dmx/input/dmxinputinit.c.orig 2009-02-25 20:12:11.000000000 +0100 -+++ a/hw/dmx/input/dmxinputinit.c 2009-03-02 22:21:09.000000000 +0100 -@@ -391,6 +391,10 @@ static int dmxKeyboardOn(DeviceIntPtr pD - DevicePtr pDev = &pDevice->public; - #endif - -+#ifdef DMXVNC -+ vncSetKeyboardDevice(pDevice); -+#endif -+ - #ifdef XKB - if (noXkbExtension) { - #endif -@@ -476,6 +480,9 @@ static int dmxDeviceOnOff(DeviceIntPtr p - break; - } - if (info.keyClass) { -+#ifdef DMXVNC -+ vncSetKeyboardDevice(pDevice); -+#endif - DevicePtr pDev = (DevicePtr) pDevice; - InitKeyboardDeviceStruct(pDev, - &info.keySyms, -@@ -512,6 +519,9 @@ static int dmxDeviceOnOff(DeviceIntPtr p - info.res[i+1], info.minres[i+1], - info.maxres[i+1]); - } -+#ifdef DMXVNC -+ vncSetPointerDevice(pDevice); -+#endif - } - if (info.focusClass) InitFocusClassDeviceStruct(pDevice); - if (info.proximityClass) InitProximityClassDeviceStruct(pDevice); ---- a/hw/xfree86/Makefile.am.orig 2009-02-25 20:12:11.000000000 +0100 -+++ a/hw/xfree86/Makefile.am 2009-03-02 22:22:26.000000000 +0100 -@@ -4,6 +4,10 @@ if DRI - DRI_SUBDIR = dri - endif - -+if VNC -+VNC_SUBDIR = vnc -+endif -+ - if DRI2 - DRI2_SUBDIR = dri2 - endif -@@ -16,13 +20,13 @@ DOC_SUBDIR = doc - - SUBDIRS = common ddc dummylib i2c x86emu int10 fbdevhw os-support parser \ - ramdac shadowfb vbe vgahw xaa \ -- xf8_16bpp loader dixmods exa modes \ -+ xf8_16bpp loader dixmods exa modes $(VNC_SUBDIR) \ - $(DRI_SUBDIR) $(DRI2_SUBDIR) $(XF86UTILS_SUBDIR) $(DOC_SUBDIR) - - DIST_SUBDIRS = common ddc dummylib i2c x86emu int10 fbdevhw os-support \ - parser ramdac shadowfb vbe vgahw xaa \ - xf8_16bpp loader dixmods dri dri2 exa modes \ -- utils doc -+ utils doc vnc - - bin_PROGRAMS = Xorg - ---- a/hw/xfree86/dixmods/Makefile.am.orig 2008-11-14 22:27:05.000000000 +0100 -+++ a/hw/xfree86/dixmods/Makefile.am 2009-03-02 22:24:14.000000000 +0100 -@@ -10,6 +10,10 @@ if DBE - DBEMOD = libdbe.la - endif - -+if XCLIPLIST -+XCLIPLISTMOD = libxcliplist.la -+endif -+ - if RECORD - RECORDMOD = librecord.la - endif -@@ -21,11 +25,13 @@ module_LTLIBRARIES = libfb.la \ - extsmoduledir = $(moduledir)/extensions - extsmodule_LTLIBRARIES = $(RECORDMOD) \ - $(DBEMOD) \ -+ $(XCLIPLISTMOD) \ - $(GLXMODS) - - AM_CFLAGS = @XORG_CFLAGS@ @DIX_CFLAGS@ - INCLUDES = @XORG_INCS@ \ - -I$(top_srcdir)/dbe \ -+ -I$(top_srcdir)/xcliplist \ - -I$(top_srcdir)/hw/xfree86/loader \ - -I$(top_srcdir)/miext/shadow \ - -I$(top_srcdir)/glx -@@ -34,6 +40,10 @@ libdbe_la_LDFLAGS = -avoid-version - libdbe_la_LIBADD = $(top_builddir)/dbe/libdbe.la - libdbe_la_SOURCES = dbemodule.c - -+libxcliplist_la_LDFLAGS = -avoid-version -+libxcliplist_la_LIBADD = $(top_builddir)/xcliplist/libxcliplist.la -+libxcliplist_la_SOURCES = $(top_srcdir)/xcliplist/cliplistmod.c -+ - libfb_la_LDFLAGS = -avoid-version - libfb_la_LIBADD = $(top_builddir)/fb/libfb.la - libfb_la_SOURCES = $(top_builddir)/fb/fbcmap_mi.c fbmodule.c diff --git a/xorg-x11-server.changes b/xorg-x11-server.changes index a825d92..6970ee1 100644 --- a/xorg-x11-server.changes +++ b/xorg-x11-server.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Tue Aug 4 10:50:34 CEST 2009 - eich@suse.de + +- Resynced with patches from Intel's Moblin project. +- Updated patches to aply cleanly again. + ------------------------------------------------------------------- Sat Aug 1 10:47:53 CEST 2009 - sndirsch@suse.de diff --git a/xorg-x11-server.spec b/xorg-x11-server.spec index c2eb67e..5da28ef 100644 --- a/xorg-x11-server.spec +++ b/xorg-x11-server.spec @@ -33,7 +33,7 @@ BuildRequires: libjpeg-devel Url: http://xorg.freedesktop.org/ %define EXPERIMENTAL 0 Version: 7.4 -Release: 47 +Release: 48 License: GPL v2 or later ; MIT License (or similar) BuildRoot: %{_tmppath}/%{name}-%{version}-build Group: System/X11/Servers/XF86_4 @@ -116,12 +116,24 @@ Patch143: autoconfig_fallback_fbdev_first.diff Patch144: keyrelease-1.5.2.diff Patch145: driver-autoconfig.diff Patch147: truetype_fontpath.diff -Patch160: libdri_noPanoramiXExtension_symbol.patch -Patch161: cache-xkbcomp-output-for-fast-start-up.patch -Patch162: xserver-boottime.patch +# Moblin +Patch161: libdri_noPanoramiXExtension_symbol.patch +Patch162: cache-xkbcomp-output-for-fast-start-up.patch +%if %moblin Patch163: xserver-1.5.0-bg-none-root.patch +%endif Patch164: xorg-detect-psb.patch -Patch168: 0001-Unclaim-PCI-slot-if-driver-probing-fails.patch +Patch165: moblin-hw-xf86-modes-Set-crtc-mode-rotation-transform-befo.patch +Patch166: moblin-xfree86-move-didLock-assignment-down-to-where-the-f.patch +Patch167: moblin-randr-fix-operation-order-so-that-rotation-transfor.patch +%if %moblin +Patch168: moblin-xserver-no-root-2.patch +%endif +Patch169: moblin-xorg-x11-nonroot-vesa.patch +%if %moblin +Patch170: xserver-boottime.patch +%endif +Patch190: 0001-Unclaim-PCI-slot-if-driver-probing-fails.patch %description This package contains the X.Org Server. @@ -244,14 +256,21 @@ popd %patch144 -p1 %patch145 -p0 %patch147 -p0 -%patch160 -p1 %patch161 -p1 -%if %moblin %patch162 -p1 +%if %moblin %patch163 -p1 %endif %patch164 -p1 +%if %moblin %patch168 -p1 +%endif +%patch169 -p1 +%if %moblin +%patch170 -p1 +%endif +# +%patch190 -p1 %build pushd xorg-docs-* diff --git a/xserver-1.5.0-bg-none-root.patch b/xserver-1.5.0-bg-none-root.patch index 9651129..a085fbe 100644 --- a/xserver-1.5.0-bg-none-root.patch +++ b/xserver-1.5.0-bg-none-root.patch @@ -12,11 +12,11 @@ Subject: [PATCH] Add nr for background=none root os/utils.c | 3 +++ 6 files changed, 32 insertions(+), 11 deletions(-) -diff --git a/dix/globals.c b/dix/globals.c -index 973dc43..dbd76bb 100644 ---- a/dix/globals.c -+++ b/dix/globals.c -@@ -141,6 +141,7 @@ FontPtr defaultFont; /* not declared in dix.h to avoid including font.h in +Index: xorg-server-1.6.3/dix/globals.c +=================================================================== +--- xorg-server-1.6.3.orig/dix/globals.c ++++ xorg-server-1.6.3/dix/globals.c +@@ -141,6 +141,7 @@ FontPtr defaultFont; /* not declared i CursorPtr rootCursor; Bool party_like_its_1989 = FALSE; Bool whiteRoot = FALSE; @@ -24,11 +24,11 @@ index 973dc43..dbd76bb 100644 int cursorScreenDevPriv[MAXSCREENS]; -diff --git a/dix/window.c b/dix/window.c -index c31fa87..8bb178d 100644 ---- a/dix/window.c -+++ b/dix/window.c -@@ -482,23 +482,24 @@ InitRootWindow(WindowPtr pWin) +Index: xorg-server-1.6.3/dix/window.c +=================================================================== +--- xorg-server-1.6.3.orig/dix/window.c ++++ xorg-server-1.6.3/dix/window.c +@@ -479,23 +479,24 @@ InitRootWindow(WindowPtr pWin) pWin->cursorIsNone = FALSE; pWin->optional->cursor = rootCursor; rootCursor->refcnt++; @@ -59,10 +59,10 @@ index c31fa87..8bb178d 100644 MapWindow(pWin, serverClient); } -diff --git a/hw/xfree86/common/xf86Init.c b/hw/xfree86/common/xf86Init.c -index 236c00b..083a6ac 100644 ---- a/hw/xfree86/common/xf86Init.c -+++ b/hw/xfree86/common/xf86Init.c +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Init.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Init.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Init.c @@ -79,6 +79,7 @@ #ifdef RENDER #include "picturestr.h" @@ -95,10 +95,10 @@ index 236c00b..083a6ac 100644 #ifdef DEBUG ErrorF("xf86CreateRootWindow() returns %d\n", ret); #endif -diff --git a/hw/xfree86/common/xf86str.h b/hw/xfree86/common/xf86str.h -index 904c369..8c38f69 100644 ---- a/hw/xfree86/common/xf86str.h -+++ b/hw/xfree86/common/xf86str.h +Index: xorg-server-1.6.3/hw/xfree86/common/xf86str.h +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86str.h ++++ xorg-server-1.6.3/hw/xfree86/common/xf86str.h @@ -531,7 +531,7 @@ typedef struct _confdrirec { } confDRIRec, *confDRIPtr; @@ -118,10 +118,10 @@ index 904c369..8c38f69 100644 /* * These can be used when the minor ABI version is incremented. * The NUM_* parameters must be reduced appropriately to keep the -diff --git a/include/opaque.h b/include/opaque.h -index 07a0715..be1577b 100644 ---- a/include/opaque.h -+++ b/include/opaque.h +Index: xorg-server-1.6.3/include/opaque.h +=================================================================== +--- xorg-server-1.6.3.orig/include/opaque.h ++++ xorg-server-1.6.3/include/opaque.h @@ -71,6 +71,7 @@ extern Bool defeatAccessControl; extern long maxBigRequestSize; extern Bool party_like_its_1989; @@ -130,10 +130,10 @@ index 07a0715..be1577b 100644 extern Bool CoreDump; -diff --git a/os/utils.c b/os/utils.c -index b100949..c41b45b 100644 ---- a/os/utils.c -+++ b/os/utils.c +Index: xorg-server-1.6.3/os/utils.c +=================================================================== +--- xorg-server-1.6.3.orig/os/utils.c ++++ xorg-server-1.6.3/os/utils.c @@ -515,6 +515,7 @@ void UseMsg(void) #endif ErrorF("-nolisten string don't listen on protocol\n"); @@ -142,7 +142,7 @@ index b100949..c41b45b 100644 ErrorF("-reset reset after last client exists\n"); ErrorF("-p # screen-saver pattern duration (minutes)\n"); ErrorF("-pn accept failure to listen on all ports\n"); -@@ -859,6 +860,8 @@ ProcessCommandLine(int argc, char *argv[]) +@@ -859,6 +860,8 @@ ProcessCommandLine(int argc, char *argv[ defaultBackingStore = WhenMapped; else if ( strcmp( argv[i], "-wr") == 0) whiteRoot = TRUE; diff --git a/xserver-boottime.patch b/xserver-boottime.patch index 1790078..34011e2 100644 --- a/xserver-boottime.patch +++ b/xserver-boottime.patch @@ -1,8 +1,8 @@ -diff --git a/os/log.c b/os/log.c -index 0860847..2c46f1a 100644 ---- a/os/log.c -+++ b/os/log.c -@@ -255,6 +255,33 @@ LogVWrite(int verb, const char *f, va_list args) +Index: xorg-server-1.6.3/os/log.c +=================================================================== +--- xorg-server-1.6.3.orig/os/log.c ++++ xorg-server-1.6.3/os/log.c +@@ -255,6 +255,33 @@ LogVWrite(int verb, const char *f, va_li static char tmpBuffer[1024]; int len = 0; diff --git a/zap_warning_xserver.diff b/zap_warning_xserver.diff index 9678ef9..c2b4288 100644 --- a/zap_warning_xserver.diff +++ b/zap_warning_xserver.diff @@ -1,8 +1,37 @@ -diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Config.c xorg-server-1.4.0.90/hw/xfree86/common/xf86Config.c -diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Events.c xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c ---- xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Events.c 2008-03-09 13:27:24.000000000 +0100 -+++ xorg-server-1.4.0.90/hw/xfree86/common/xf86Events.c 2008-03-09 13:30:18.000000000 +0100 -@@ -267,12 +267,26 @@ +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Config.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Config.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Config.c +@@ -706,6 +706,7 @@ typedef enum { + FLAG_NOTRAPSIGNALS, + FLAG_DONTVTSWITCH, + FLAG_DONTZAP, ++ FLAG_ZAPWARNING, + FLAG_DONTZOOM, + FLAG_DISABLEVIDMODE, + FLAG_ALLOWNONLOCAL, +@@ -743,6 +744,8 @@ static OptionInfoRec FlagOptions[] = { + {0}, FALSE }, + { FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN, + {0}, FALSE }, ++ { FLAG_ZAPWARNING, "ZapWarning", OPTV_BOOLEAN, ++ {0}, FALSE }, + { FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN, + {0}, FALSE }, + { FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN, +@@ -855,6 +858,7 @@ configServerFlags(XF86ConfFlagsPtr flags + xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS, &xf86Info.notrapSignals); + xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch); + xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap); ++ xf86GetOptValBool(FlagOptions, FLAG_ZAPWARNING, &xf86Info.ZapWarning); + xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom); + + xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI); +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Events.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Events.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Events.c +@@ -191,12 +191,26 @@ xf86ProcessActionEvent(ActionEvent actio #endif switch (action) { case ACTION_TERMINATE: @@ -33,23 +62,51 @@ diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Events.c xorg-server-1 break; case ACTION_NEXT_MODE: if (!xf86Info.dontZoom) -diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Globals.c xorg-server-1.4.0.90/hw/xfree86/common/xf86Globals.c -diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Privstr.h xorg-server-1.4.0.90/hw/xfree86/common/xf86Privstr.h ---- xorg-server-1.4.0.90-orig//hw/xfree86/common/xf86Privstr.h 2007-12-07 03:38:42.000000000 +0100 -+++ xorg-server-1.4.0.90/hw/xfree86/common/xf86Privstr.h 2008-03-09 13:29:43.000000000 +0100 -@@ -85,6 +85,7 @@ - Bool inputPending; +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Globals.c +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Globals.c ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Globals.c +@@ -106,6 +106,7 @@ xf86InfoRec xf86Info = { + .vtRequestsPending = FALSE, + .dontVTSwitch = FALSE, + .dontZap = FALSE, ++ .ZapWarning = FALSE, + .dontZoom = FALSE, + .notrapSignals = FALSE, + .caughtSignal = FALSE, +Index: xorg-server-1.6.3/hw/xfree86/common/xf86Privstr.h +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/common/xf86Privstr.h ++++ xorg-server-1.6.3/hw/xfree86/common/xf86Privstr.h +@@ -72,6 +72,7 @@ typedef struct { + Bool vtRequestsPending; Bool dontVTSwitch; Bool dontZap; + Bool ZapWarning; Bool dontZoom; Bool notrapSignals; /* don't exit cleanly - die at fault */ Bool caughtSignal; -diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/doc/man/xorg.conf.man.pre xorg-server-1.4.0.90/hw/xfree86/doc/man/xorg.conf.man.pre ---- xorg-server-1.4.0.90-orig//hw/xfree86/doc/man/xorg.conf.man.pre 2008-03-09 12:36:39.000000000 +0100 -+++ xorg-server-1.4.0.90/hw/xfree86/doc/man/xorg.conf.man.pre 2008-03-09 13:42:36.000000000 +0100 -@@ -446,6 +446,13 @@ - is passed to clients. +Index: xorg-server-1.6.3/hw/xfree86/doc/man/Xorg.man.pre +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/doc/man/Xorg.man.pre ++++ xorg-server-1.6.3/hw/xfree86/doc/man/Xorg.man.pre +@@ -452,8 +452,8 @@ are: + Immediately kills the server -- no questions asked. This is disabled by + default. It can be enabled with the -retro command line flag or by setting + the +-.B DontZap +-__xconfigfile__(__filemansuffix__) file option to a FALSE value. ++.B DontZap/ZapWarning ++__xconfigfile__(__filemansuffix__) file options to a FALSE value. + .TP 8 + .B Ctrl+Alt+Keypad-Plus + Change video mode to next one specified in the configuration file. +Index: xorg-server-1.6.3/hw/xfree86/doc/man/xorg.conf.man.pre +=================================================================== +--- xorg-server-1.6.3.orig/hw/xfree86/doc/man/xorg.conf.man.pre ++++ xorg-server-1.6.3/hw/xfree86/doc/man/xorg.conf.man.pre +@@ -470,6 +470,13 @@ This action is normally used to terminat + When this option is enabled, the action has no effect. Default: off. .TP 7 +.BI "Option \*qZapWarning\*q \*q" boolean \*q @@ -62,53 +119,3 @@ diff -ur xorg-server-1.4.0.90-orig//hw/xfree86/doc/man/xorg.conf.man.pre xorg-se .BI "Option \*qDontZoom\*q \*q" boolean \*q This disallows the use of the .B Ctrl+Alt+Keypad\-Plus ---- xorg-server-1.6.0/hw/xfree86/common/xf86Globals.c.orig 2009-02-27 16:23:51.000000000 +0100 -+++ xorg-server-1.6.0/hw/xfree86/common/xf86Globals.c 2009-02-27 16:30:19.000000000 +0100 -@@ -106,6 +106,7 @@ xf86InfoRec xf86Info = { - .vtRequestsPending = FALSE, - .dontVTSwitch = FALSE, - .dontZap = FALSE, -+ .ZapWarning = FALSE, - .dontZoom = FALSE, - .notrapSignals = FALSE, - .caughtSignal = FALSE, ---- xorg-server-1.6.0/hw/xfree86/doc/man/Xorg.man.pre.orig 2009-02-25 20:12:11.000000000 +0100 -+++ xorg-server-1.6.0/hw/xfree86/doc/man/Xorg.man.pre 2009-02-27 16:32:45.000000000 +0100 -@@ -452,8 +452,8 @@ are: - Immediately kills the server -- no questions asked. This is disabled by - default. It can be enabled with the -retro command line flag or by setting - the --.B DontZap --__xconfigfile__(__filemansuffix__) file option to a FALSE value. -+.B DontZap/ZapWarning -+__xconfigfile__(__filemansuffix__) file options to a FALSE value. - .TP 8 - .B Ctrl+Alt+Keypad-Plus - Change video mode to next one specified in the configuration file. ---- xorg-server-1.6.2/hw/xfree86/common/xf86Config.c.orig 2009-07-07 19:48:58.000000000 +0200 -+++ xorg-server-1.6.2/hw/xfree86/common/xf86Config.c 2009-07-08 02:46:35.000000000 +0200 -@@ -706,6 +706,7 @@ - FLAG_NOTRAPSIGNALS, - FLAG_DONTVTSWITCH, - FLAG_DONTZAP, -+ FLAG_ZAPWARNING, - FLAG_DONTZOOM, - FLAG_DISABLEVIDMODE, - FLAG_ALLOWNONLOCAL, -@@ -743,6 +744,8 @@ - {0}, FALSE }, - { FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN, - {0}, FALSE }, -+ { FLAG_ZAPWARNING, "ZapWarning", OPTV_BOOLEAN, -+ {0}, FALSE }, - { FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN, - {0}, FALSE }, - { FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN, -@@ -855,6 +858,7 @@ - xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS, &xf86Info.notrapSignals); - xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch); - xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap); -+ xf86GetOptValBool(FlagOptions, FLAG_ZAPWARNING, &xf86Info.ZapWarning); - xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom); - - xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);