Accepting request 29877 from X11:XOrg
Copy from X11:XOrg/xorg-x11-server based on submit request 29877 from user sndirsch OBS-URL: https://build.opensuse.org/request/show/29877 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xorg-x11-server?expand=0&rev=153
This commit is contained in:
parent
2dc08b7e13
commit
6c7e20d56d
@ -5,22 +5,14 @@ Subject: [PATCH] Fix segfault when killing X with ctrl-alt-backspace.
|
|||||||
|
|
||||||
The damage structure for the cursor is not deregistered before deallocation,
|
The damage structure for the cursor is not deregistered before deallocation,
|
||||||
causing a subsequent DamageUnregister () to segfault.
|
causing a subsequent DamageUnregister () to segfault.
|
||||||
---
|
================================================================================
|
||||||
mi/misprite.c | 1 +
|
--- xorg-server-1.7.4/mi/misprite.c
|
||||||
1 files changed, 1 insertions(+), 0 deletions(-)
|
+++ xorg-server-1.7.4/mi/misprite.c
|
||||||
|
@@ -384,6 +384,7 @@
|
||||||
diff --git a/mi/misprite.c b/mi/misprite.c
|
|
||||||
index 692e6c9..c368928 100644
|
|
||||||
--- a/mi/misprite.c
|
|
||||||
+++ b/mi/misprite.c
|
|
||||||
@@ -313,6 +313,7 @@ miSpriteCloseScreen (int i, ScreenPtr pScreen)
|
|
||||||
pScreen->InstallColormap = pScreenPriv->InstallColormap;
|
pScreen->InstallColormap = pScreenPriv->InstallColormap;
|
||||||
pScreen->StoreColors = pScreenPriv->StoreColors;
|
pScreen->StoreColors = pScreenPriv->StoreColors;
|
||||||
|
|
||||||
+ miSpriteDisableDamage(pScreen, pScreenPriv);
|
+ miSpriteDisableDamage(pScreen, pScreenPriv);
|
||||||
DamageDestroy (pScreenPriv->pDamage);
|
DamageDestroy (pScreenPriv->pDamage);
|
||||||
|
|
||||||
xfree ((pointer) pScreenPriv);
|
xfree (pScreenPriv);
|
||||||
--
|
|
||||||
1.6.4.2
|
|
||||||
|
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
diff --git a/hw/xfree86/modes/xf86Cursors.c b/hw/xfree86/modes/xf86Cursors.c
|
|
||||||
index fc4df84..385848b 100644
|
|
||||||
--- a/hw/xfree86/modes/xf86Cursors.c
|
|
||||||
+++ b/hw/xfree86/modes/xf86Cursors.c
|
|
||||||
@@ -480,10 +480,10 @@ xf86_use_hw_cursor_argb (ScreenPtr screen, CursorPtr cursor)
|
|
||||||
xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
|
|
||||||
xf86CursorInfoPtr cursor_info = xf86_config->cursor_info;
|
|
||||||
|
|
||||||
+ ++cursor->refcnt;
|
|
||||||
if (xf86_config->cursor)
|
|
||||||
FreeCursor (xf86_config->cursor, None);
|
|
||||||
xf86_config->cursor = cursor;
|
|
||||||
- ++cursor->refcnt;
|
|
||||||
|
|
||||||
/* Make sure ARGB support is available */
|
|
||||||
if ((cursor_info->Flags & HARDWARE_CURSOR_ARGB) == 0)
|
|
@ -1,70 +0,0 @@
|
|||||||
From 593348b46a21c6f291194fa9ff61bd5bc7c5cb9f Mon Sep 17 00:00:00 2001
|
|
||||||
From: Matthias Hopf <mhopf@suse.de>
|
|
||||||
Date: Wed, 24 Jun 2009 18:26:23 +0200
|
|
||||||
Subject: [PATCH] Unclaim PCI slot if driver probing fails.
|
|
||||||
|
|
||||||
Otherwise no subsequent driver will be able to claim this pci slot.
|
|
||||||
Example for this: fbdev tries to claim, but framebuffer device is not
|
|
||||||
available. Later on VESA cannot claim the device.
|
|
||||||
---
|
|
||||||
hw/xfree86/common/xf86.h | 1 +
|
|
||||||
hw/xfree86/common/xf86Init.c | 3 ++-
|
|
||||||
hw/xfree86/common/xf86pciBus.c | 19 +++++++++++++++++++
|
|
||||||
3 files changed, 22 insertions(+), 1 deletions(-)
|
|
||||||
|
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86.h
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86.h
|
|
||||||
+++ xorg-server-1.6.3.901/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,
|
|
||||||
int chipset, GDevPtr dev, Bool active);
|
|
||||||
+void xf86UnclaimPciSlot(struct pci_device *);
|
|
||||||
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.3.901/hw/xfree86/common/xf86Init.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Init.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Init.c
|
|
||||||
@@ -514,7 +514,8 @@ probe_devices_from_device_sections(Drive
|
|
||||||
if ((*drvp->PciProbe)(drvp, entry, pPci,
|
|
||||||
devices[j].match_data)) {
|
|
||||||
foundScreen = TRUE;
|
|
||||||
- }
|
|
||||||
+ } else
|
|
||||||
+ xf86UnclaimPciSlot(pPci);
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86pciBus.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86pciBus.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86pciBus.c
|
|
||||||
@@ -753,6 +753,25 @@ xf86ClaimPciSlot(struct pci_device * d,
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
|
||||||
+ * Unclaim PCI slot, e.g. if probing failed, so that a different driver can claim.
|
|
||||||
+ */
|
|
||||||
+void
|
|
||||||
+xf86UnclaimPciSlot(struct pci_device *d)
|
|
||||||
+{
|
|
||||||
+ int i;
|
|
||||||
+
|
|
||||||
+ for (i = 0; i < xf86NumEntities; i++) {
|
|
||||||
+ const EntityPtr p = xf86Entities[i];
|
|
||||||
+
|
|
||||||
+ if ((p->bus.type == BUS_PCI) && (p->bus.id.pci == d)) {
|
|
||||||
+ /* Probably the slot should be deallocated? */
|
|
||||||
+ p->bus.type = BUS_NONE;
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ }
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+/*
|
|
||||||
* Parse a BUS ID string, and return the PCI bus parameters if it was
|
|
||||||
* in the correct format for a PCI bus id.
|
|
||||||
*/
|
|
@ -1,13 +0,0 @@
|
|||||||
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;
|
|
||||||
strcpy(addr.sun_path, ACPI_SOCKET);
|
|
||||||
if ((r = connect(fd, (struct sockaddr*)&addr, sizeof(addr))) == -1) {
|
|
||||||
- xf86MsgVerb(X_WARNING,3,"Open ACPI failed (%s) (%s)\n", ACPI_SOCKET,
|
|
||||||
- strerror(errno));
|
|
||||||
shutdown(fd, 2);
|
|
||||||
close(fd);
|
|
||||||
return NULL;
|
|
@ -1,13 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/os-support/linux/lnx_apm.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/os-support/linux/lnx_apm.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/os-support/linux/lnx_apm.c
|
|
||||||
@@ -189,7 +189,7 @@ lnxAPMOpen(void)
|
|
||||||
close(pfd);
|
|
||||||
xf86PMGetEventFromOs = lnxPMGetEventFromOs;
|
|
||||||
xf86PMConfirmEventToOs = lnxPMConfirmEventToOs;
|
|
||||||
- APMihPtr = xf86AddInputHandler(fd,xf86HandlePMEvents,NULL);
|
|
||||||
+ APMihPtr = xf86AddGeneralHandler(fd,xf86HandlePMEvents,NULL);
|
|
||||||
xf86MsgVerb(X_INFO,3,"Open APM successful\n");
|
|
||||||
return lnxCloseAPM;
|
|
||||||
}
|
|
@ -36,22 +36,3 @@ Index: xorg-server-1.6.3.901/configure.ac
|
|||||||
case $host_os in
|
case $host_os in
|
||||||
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
||||||
esac
|
esac
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/Makefile.am
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/Makefile.am
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/Makefile.am
|
|
||||||
@@ -100,11 +100,11 @@ dist_options_DATA = Options
|
|
||||||
|
|
||||||
CPP_FILES_FLAGS = \
|
|
||||||
-DLOCALFONTPATH="\"$(BASE_FONT_PATH)/local\"" \
|
|
||||||
- -DMISCFONTPATH="\"$(BASE_FONT_PATH)/misc\"" \
|
|
||||||
+ -DMISCFONTPATH="\"$(BASE_FONT_PATH)/misc:unscaled\"" \
|
|
||||||
-DT1FONTPATH="\"$(BASE_FONT_PATH)/Type1\"" \
|
|
||||||
-DTRUETYPEFONTPATH="\"$(BASE_FONT_PATH)/TTF\"" \
|
|
||||||
- -DDPI75FONTPATH="\"$(BASE_FONT_PATH)/75dpi\"" \
|
|
||||||
- -DDPI100FONTPATH="\"$(BASE_FONT_PATH)/100dpi\"" \
|
|
||||||
+ -DDPI75FONTPATH="\"$(BASE_FONT_PATH)/75dpi:unscaled\"" \
|
|
||||||
+ -DDPI100FONTPATH="\"$(BASE_FONT_PATH)/100dpi:unscaled\"" \
|
|
||||||
-DMODULEPATH=\"$(DEFAULT_MODULE_PATH)\"
|
|
||||||
|
|
||||||
relink:
|
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: hw/xfree86/common/xf86Events.c
|
Index: hw/xfree86/common/xf86Events.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- hw/xfree86/common/xf86Events.c.orig
|
--- hw/xfree86/common/xf86Events.c
|
||||||
+++ hw/xfree86/common/xf86Events.c
|
+++ hw/xfree86/common/xf86Events.c
|
||||||
@@ -124,6 +124,7 @@ typedef struct x_IHRec {
|
@@ -115,6 +115,7 @@
|
||||||
InputHandlerProc ihproc;
|
InputHandlerProc ihproc;
|
||||||
pointer data;
|
pointer data;
|
||||||
Bool enabled;
|
Bool enabled;
|
||||||
@ -10,40 +10,39 @@ Index: hw/xfree86/common/xf86Events.c
|
|||||||
struct x_IHRec * next;
|
struct x_IHRec * next;
|
||||||
} IHRec, *IHPtr;
|
} IHRec, *IHPtr;
|
||||||
|
|
||||||
@@ -513,8 +514,12 @@ xf86VTSwitch()
|
@@ -456,8 +457,12 @@
|
||||||
for (i = 0; i < xf86NumScreens; i++)
|
* Keep the order: Disable Device > LeaveVT
|
||||||
xf86Screens[i]->LeaveVT(i, 0);
|
* EnterVT > EnableDevice
|
||||||
|
*/
|
||||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||||
- xf86DisableInputHandler(ih);
|
- xf86DisableInputHandler(ih);
|
||||||
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
||||||
+ if (ih->is_input)
|
+ if (ih->is_input)
|
||||||
+ xf86DisableInputHandler(ih);
|
+ xf86DisableInputHandler(ih);
|
||||||
+ else
|
+ else
|
||||||
+ xf86DisableGeneralHandler(ih);
|
+ xf86DisableGeneralHandler(ih);
|
||||||
+ }
|
+ }
|
||||||
xf86AccessLeave(); /* We need this here, otherwise */
|
for (pInfo = xf86InputDevs; pInfo; pInfo = pInfo->next) {
|
||||||
xf86AccessLeaveState(); /* console won't be restored */
|
if (pInfo->dev) {
|
||||||
|
xf86ReleaseKeys(pInfo->dev);
|
||||||
@@ -552,9 +557,12 @@ xf86VTSwitch()
|
@@ -499,8 +504,12 @@
|
||||||
|
EnableDevice(pInfo->dev, TRUE);
|
||||||
|
pInfo = pInfo->next;
|
||||||
}
|
}
|
||||||
/* XXX HACK */
|
|
||||||
xf86ReleaseKeys(inputInfo.keyboard);
|
|
||||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||||
- xf86EnableInputHandler(ih);
|
- xf86EnableInputHandler(ih);
|
||||||
-
|
|
||||||
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
||||||
+ if (ih->is_input)
|
+ if (ih->is_input)
|
||||||
+ xf86EnableInputHandler(ih);
|
+ xf86EnableInputHandler(ih);
|
||||||
+ else
|
+ else
|
||||||
+ xf86EnableGeneralHandler(ih);
|
+ xf86EnableGeneralHandler(ih);
|
||||||
+ }
|
+ }
|
||||||
|
|
||||||
xf86UnblockSIGIO(prevSIGIO);
|
xf86UnblockSIGIO(prevSIGIO);
|
||||||
|
|
||||||
} else {
|
@@ -556,8 +565,12 @@
|
||||||
@@ -617,8 +625,12 @@ xf86VTSwitch()
|
pInfo = pInfo->next;
|
||||||
/* XXX HACK */
|
}
|
||||||
xf86ReleaseKeys(inputInfo.keyboard);
|
|
||||||
|
|
||||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||||
- xf86EnableInputHandler(ih);
|
- xf86EnableInputHandler(ih);
|
||||||
@ -56,7 +55,7 @@ Index: hw/xfree86/common/xf86Events.c
|
|||||||
|
|
||||||
xf86UnblockSIGIO(prevSIGIO);
|
xf86UnblockSIGIO(prevSIGIO);
|
||||||
}
|
}
|
||||||
@@ -655,8 +667,10 @@ xf86AddInputHandler(int fd, InputHandler
|
@@ -594,8 +607,10 @@
|
||||||
{
|
{
|
||||||
IHPtr ih = addInputHandler(fd, proc, data);
|
IHPtr ih = addInputHandler(fd, proc, data);
|
||||||
|
|
||||||
@ -68,11 +67,9 @@ Index: hw/xfree86/common/xf86Events.c
|
|||||||
return ih;
|
return ih;
|
||||||
}
|
}
|
||||||
|
|
||||||
Index: os/WaitFor.c
|
--- os/WaitFor.c
|
||||||
===================================================================
|
|
||||||
--- os/WaitFor.c.orig
|
|
||||||
+++ os/WaitFor.c
|
+++ os/WaitFor.c
|
||||||
@@ -141,6 +141,7 @@ static OsTimerPtr timers = NULL;
|
@@ -142,6 +142,7 @@
|
||||||
* For more info on ClientsWithInput, see ReadRequestFromClient().
|
* For more info on ClientsWithInput, see ReadRequestFromClient().
|
||||||
* pClientsReady is an array to store ready client->index values into.
|
* pClientsReady is an array to store ready client->index values into.
|
||||||
*****************/
|
*****************/
|
||||||
@ -80,7 +77,7 @@ Index: os/WaitFor.c
|
|||||||
|
|
||||||
int
|
int
|
||||||
WaitForSomething(int *pClientsReady)
|
WaitForSomething(int *pClientsReady)
|
||||||
@@ -278,10 +279,9 @@ WaitForSomething(int *pClientsReady)
|
@@ -279,10 +280,9 @@
|
||||||
if (expired)
|
if (expired)
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -93,7 +90,7 @@ Index: os/WaitFor.c
|
|||||||
|
|
||||||
if (*checkForInput[0] == *checkForInput[1]) {
|
if (*checkForInput[0] == *checkForInput[1]) {
|
||||||
if (timers)
|
if (timers)
|
||||||
@@ -316,6 +316,12 @@ WaitForSomething(int *pClientsReady)
|
@@ -317,6 +317,12 @@
|
||||||
QueueWorkProc(EstablishNewConnections, NULL,
|
QueueWorkProc(EstablishNewConnections, NULL,
|
||||||
(pointer)&LastSelectMask);
|
(pointer)&LastSelectMask);
|
||||||
|
|
||||||
|
@ -1,55 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/modes/xf86RandR12.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/modes/xf86RandR12.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/modes/xf86RandR12.c
|
|
||||||
@@ -55,6 +55,13 @@ typedef struct _xf86RandR12Info {
|
|
||||||
int pointerY;
|
|
||||||
Rotation rotation; /* current mode */
|
|
||||||
Rotation supported_rotations; /* driver supported */
|
|
||||||
+
|
|
||||||
+ /* Used to wrap EnterVT so we can re-probe the outputs when a laptop unsuspends
|
|
||||||
+ * (actually, any time that we switch back into our VT).
|
|
||||||
+ *
|
|
||||||
+ * See https://bugs.freedesktop.org/show_bug.cgi?id=21554
|
|
||||||
+ */
|
|
||||||
+ xf86EnterVTProc *orig_EnterVT;
|
|
||||||
} XF86RandRInfoRec, *XF86RandRInfoPtr;
|
|
||||||
|
|
||||||
#ifdef RANDR_12_INTERFACE
|
|
||||||
@@ -1648,10 +1655,25 @@ xf86RandR13SetPanning (ScreenPtr
|
|
||||||
}
|
|
||||||
|
|
||||||
static Bool
|
|
||||||
+xf86RandR12EnterVT (int screen_index, int flags)
|
|
||||||
+{
|
|
||||||
+ ScreenPtr pScreen = screenInfo.screens[screen_index];
|
|
||||||
+ XF86RandRInfoPtr randrp = XF86RANDRINFO(pScreen);
|
|
||||||
+
|
|
||||||
+ if (randrp->orig_EnterVT) {
|
|
||||||
+ if (!randrp->orig_EnterVT (screen_index, flags))
|
|
||||||
+ return FALSE;
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
+ return RRGetInfo (pScreen, TRUE); /* force a re-probe of outputs and notify clients about changes */
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+static Bool
|
|
||||||
xf86RandR12Init12 (ScreenPtr pScreen)
|
|
||||||
{
|
|
||||||
ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
|
||||||
rrScrPrivPtr rp = rrGetScrPriv(pScreen);
|
|
||||||
+ XF86RandRInfoPtr randrp = XF86RANDRINFO(pScreen);
|
|
||||||
|
|
||||||
rp->rrGetInfo = xf86RandR12GetInfo12;
|
|
||||||
rp->rrScreenSetSize = xf86RandR12ScreenSetSize;
|
|
||||||
@@ -1667,6 +1689,10 @@ xf86RandR12Init12 (ScreenPtr pScreen)
|
|
||||||
rp->rrModeDestroy = xf86RandR12ModeDestroy;
|
|
||||||
rp->rrSetConfig = NULL;
|
|
||||||
pScrn->PointerMoved = xf86RandR12PointerMoved;
|
|
||||||
+
|
|
||||||
+ randrp->orig_EnterVT = pScrn->EnterVT;
|
|
||||||
+ pScrn->EnterVT = xf86RandR12EnterVT;
|
|
||||||
+
|
|
||||||
if (!xf86RandR12CreateObjects12 (pScreen))
|
|
||||||
return FALSE;
|
|
||||||
|
|
@ -1,54 +0,0 @@
|
|||||||
diff --git a/Xext/shm.c b/Xext/shm.c
|
|
||||||
index dd097e6..99bbd37 100644
|
|
||||||
--- a/Xext/shm.c
|
|
||||||
+++ b/Xext/shm.c
|
|
||||||
@@ -496,15 +496,40 @@ doShmPutImage(DrawablePtr dst, GCPtr pGC,
|
|
||||||
char *data)
|
|
||||||
{
|
|
||||||
PixmapPtr pPixmap;
|
|
||||||
-
|
|
||||||
- pPixmap = GetScratchPixmapHeader(dst->pScreen, w, h, depth,
|
|
||||||
- BitsPerPixel(depth),
|
|
||||||
- PixmapBytePad(w, depth),
|
|
||||||
- data);
|
|
||||||
- if (!pPixmap)
|
|
||||||
- return;
|
|
||||||
- pGC->ops->CopyArea((DrawablePtr)pPixmap, dst, pGC, sx, sy, sw, sh, dx, dy);
|
|
||||||
- FreeScratchPixmapHeader(pPixmap);
|
|
||||||
+
|
|
||||||
+ if (format == ZPixmap || depth == 1) {
|
|
||||||
+ pPixmap = GetScratchPixmapHeader(dst->pScreen, w, h, depth,
|
|
||||||
+ BitsPerPixel(depth),
|
|
||||||
+ PixmapBytePad(w, depth),
|
|
||||||
+ data);
|
|
||||||
+ if (!pPixmap)
|
|
||||||
+ return;
|
|
||||||
+ pGC->ops->CopyArea((DrawablePtr)pPixmap, dst, pGC, sx, sy, sw, sh, dx, dy);
|
|
||||||
+ FreeScratchPixmapHeader(pPixmap);
|
|
||||||
+ } else {
|
|
||||||
+ GCPtr putGC = GetScratchGC(depth, dst->pScreen);
|
|
||||||
+
|
|
||||||
+ if (!putGC)
|
|
||||||
+ return;
|
|
||||||
+
|
|
||||||
+ pPixmap = (*dst->pScreen->CreatePixmap)(dst->pScreen, sw, sh, depth,
|
|
||||||
+ CREATE_PIXMAP_USAGE_SCRATCH);
|
|
||||||
+ if (!pPixmap) {
|
|
||||||
+ FreeScratchGC(putGC);
|
|
||||||
+ return;
|
|
||||||
+ }
|
|
||||||
+ ValidateGC(&pPixmap->drawable, putGC);
|
|
||||||
+ (*putGC->ops->PutImage)(&pPixmap->drawable, putGC, depth, -sx, -sy, w, h, 0,
|
|
||||||
+ (format == XYPixmap) ? XYPixmap : ZPixmap, data);
|
|
||||||
+ FreeScratchGC(putGC);
|
|
||||||
+ if (format == XYBitmap)
|
|
||||||
+ (void)(*pGC->ops->CopyPlane)(&pPixmap->drawable, dst, pGC, 0, 0, sw, sh,
|
|
||||||
+ dx, dy, 1L);
|
|
||||||
+ else
|
|
||||||
+ (void)(*pGC->ops->CopyArea)(&pPixmap->drawable, dst, pGC, 0, 0, sw, sh,
|
|
||||||
+ dx, dy);
|
|
||||||
+ (*pPixmap->drawable.pScreen->DestroyPixmap)(pPixmap);
|
|
||||||
+ }
|
|
||||||
}
|
|
||||||
|
|
||||||
#ifdef PANORAMIX
|
|
@ -8,17 +8,10 @@ xkbcomp outputs will be cached in files with hashed keymap as
|
|||||||
names. This saves boot time for around 1s on commodity netbooks.
|
names. This saves boot time for around 1s on commodity netbooks.
|
||||||
|
|
||||||
Signed-off-by: Yan Li <yan.i.li@intel.com>
|
Signed-off-by: Yan Li <yan.i.li@intel.com>
|
||||||
---
|
================================================================================
|
||||||
configure.ac | 6 +-
|
--- xorg-server-1.7.4/configure.ac
|
||||||
xkb/README.compiled | 8 +-
|
+++ xorg-server-1.7.4/configure.ac
|
||||||
xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++---------
|
@@ -502,9 +502,9 @@
|
||||||
3 files changed, 164 insertions(+), 42 deletions(-)
|
|
||||||
|
|
||||||
Index: xorg-server-1.6.3.901/configure.ac
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/configure.ac
|
|
||||||
+++ xorg-server-1.6.3.901/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)]),
|
AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]),
|
||||||
[ XKBPATH="$withval" ],
|
[ XKBPATH="$withval" ],
|
||||||
[ XKBPATH="${datadir}/X11/xkb" ])
|
[ XKBPATH="${datadir}/X11/xkb" ])
|
||||||
@ -27,23 +20,21 @@ Index: xorg-server-1.6.3.901/configure.ac
|
|||||||
[ XKBOUTPUT="$withval" ],
|
[ XKBOUTPUT="$withval" ],
|
||||||
- [ XKBOUTPUT="compiled" ])
|
- [ XKBOUTPUT="compiled" ])
|
||||||
+ [ XKBOUTPUT="${localstatedir}/cache/xkb" ])
|
+ [ XKBOUTPUT="${localstatedir}/cache/xkb" ])
|
||||||
AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH],
|
AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES],
|
||||||
[Directory where ancillary server config files are installed (default: ${libdir}/xorg)]),
|
[Keyboard ruleset (default: base/evdev)]),
|
||||||
[ SERVERCONFIG="$withval" ],
|
[ XKB_DFLT_RULES="$withval" ],
|
||||||
@@ -1807,7 +1807,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir,
|
@@ -1120,7 +1120,7 @@
|
||||||
|
dnl Make sure XKM_OUTPUT_DIR is an absolute path
|
||||||
XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1`
|
XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1`
|
||||||
|
if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then
|
||||||
if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then
|
|
||||||
- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT"
|
- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT"
|
||||||
+ AC_MSG_ERROR([xkb-output must be an absolute path.])
|
+ AC_MSG_ERROR([xkb-output must be an absolute path.])
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed
|
dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed
|
||||||
Index: xorg-server-1.6.3.901/xkb/README.compiled
|
--- xorg-server-1.7.4/xkb/README.compiled
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/xkb/README.compiled
|
||||||
--- xorg-server-1.6.3.901.orig/xkb/README.compiled
|
@@ -4,10 +4,10 @@
|
||||||
+++ xorg-server-1.6.3.901/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,
|
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
|
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:
|
time. The default keymap for any server is usually stored in:
|
||||||
@ -58,11 +49,9 @@ Index: xorg-server-1.6.3.901/xkb/README.compiled
|
|||||||
|
|
||||||
Unless the X server is modified, sharing this directory between servers on
|
Unless the X server is modified, sharing this directory between servers on
|
||||||
different hosts could cause problems.
|
different hosts could cause problems.
|
||||||
Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
--- xorg-server-1.7.4/xkb/ddxLoad.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/xkb/ddxLoad.c
|
||||||
--- xorg-server-1.6.3.901.orig/xkb/ddxLoad.c
|
@@ -32,6 +32,12 @@
|
||||||
+++ xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|
||||||
@@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
||||||
#include <xkb-config.h>
|
#include <xkb-config.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -74,8 +63,8 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
+#endif
|
+#endif
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#define NEED_EVENTS 1
|
#include <X11/X.h>
|
||||||
@@ -46,24 +52,13 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
@@ -45,24 +51,13 @@
|
||||||
#define XKBSRV_NEED_FILE_FUNCS
|
#define XKBSRV_NEED_FILE_FUNCS
|
||||||
#include <xkbsrv.h>
|
#include <xkbsrv.h>
|
||||||
#include <X11/extensions/XI.h>
|
#include <X11/extensions/XI.h>
|
||||||
@ -101,10 +90,10 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
#define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\""
|
#define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\""
|
||||||
#define ERROR_PREFIX "\"> \""
|
#define ERROR_PREFIX "\"> \""
|
||||||
#define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\""
|
#define POST_ERROR_MSG1 "\"Errors from xkbcomp are not fatal to the X server\""
|
||||||
@@ -179,6 +174,45 @@ OutputDirectory(
|
@@ -177,6 +172,45 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
+Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH*2+1], const char * input)
|
+Sha1Asc(char sha1Asc[SHA_DIGEST_LENGTH*2+1], const char * input)
|
||||||
+{
|
+{
|
||||||
+ int i;
|
+ int i;
|
||||||
@ -122,15 +111,15 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
+
|
+
|
||||||
+ success = SHA1_Init (&ctx);
|
+ success = SHA1_Init (&ctx);
|
||||||
+ if (! success)
|
+ if (! success)
|
||||||
+ return BadAlloc;
|
+ return BadAlloc;
|
||||||
+
|
+
|
||||||
+ success = SHA1_Update (&ctx, input, strlen(input));
|
+ success = SHA1_Update (&ctx, input, strlen(input));
|
||||||
+ if (! success)
|
+ if (! success)
|
||||||
+ return BadAlloc;
|
+ return BadAlloc;
|
||||||
+
|
+
|
||||||
+ success = SHA1_Final (sha1, &ctx);
|
+ success = SHA1_Final (sha1, &ctx);
|
||||||
+ if (! success)
|
+ if (! success)
|
||||||
+ return BadAlloc;
|
+ return BadAlloc;
|
||||||
+#endif
|
+#endif
|
||||||
+
|
+
|
||||||
+ /* convert sha1 to sha1_asc */
|
+ /* convert sha1 to sha1_asc */
|
||||||
@ -147,7 +136,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
XkbDDXCompileKeymapByNames( XkbDescPtr xkb,
|
XkbDDXCompileKeymapByNames( XkbDescPtr xkb,
|
||||||
XkbComponentNamesPtr names,
|
XkbComponentNamesPtr names,
|
||||||
unsigned want,
|
unsigned want,
|
||||||
@@ -187,7 +221,11 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
@@ -185,7 +219,11 @@
|
||||||
int nameRtrnLen)
|
int nameRtrnLen)
|
||||||
{
|
{
|
||||||
FILE * out;
|
FILE * out;
|
||||||
@ -160,7 +149,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
|
|
||||||
const char *emptystring = "";
|
const char *emptystring = "";
|
||||||
const char *xkbbasedirflag = emptystring;
|
const char *xkbbasedirflag = emptystring;
|
||||||
@@ -198,16 +236,70 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
@@ -196,15 +234,70 @@
|
||||||
/* WIN32 has no popen. The input must be stored in a file which is
|
/* 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. */
|
used as input for xkbcomp. xkbcomp does not read from stdin. */
|
||||||
char tmpname[PATH_MAX];
|
char tmpname[PATH_MAX];
|
||||||
@ -207,8 +196,6 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
+ snprintf(xkmfile, sizeof(xkmfile), "server-%s", display);
|
+ snprintf(xkmfile, sizeof(xkmfile), "server-%s", display);
|
||||||
+ }
|
+ }
|
||||||
|
|
||||||
- XkbEnsureSafeMapName(keymap);
|
|
||||||
+ XkbEnsureSafeMapName(xkmfile);
|
|
||||||
OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir));
|
OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir));
|
||||||
|
|
||||||
+ /* set nameRtrn, fail if it's too small */
|
+ /* set nameRtrn, fail if it's too small */
|
||||||
@ -231,11 +218,12 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
+ /* continue to call xkbcomp to compile the keymap. to avoid race
|
+ /* continue to call xkbcomp to compile the keymap. to avoid race
|
||||||
+ condition, we compile it to a tmpfile then rename it to
|
+ condition, we compile it to a tmpfile then rename it to
|
||||||
+ xkmfile */
|
+ xkmfile */
|
||||||
|
+
|
||||||
+
|
+
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
strcpy(tmpname, Win32TempDir());
|
strcpy(tmpname, Win32TempDir());
|
||||||
strcat(tmpname, "\\xkb_XXXXXX");
|
strcat(tmpname, "\\xkb_XXXXXX");
|
||||||
@@ -230,19 +322,30 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
@@ -227,19 +320,30 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -269,7 +257,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
#ifndef WIN32
|
#ifndef WIN32
|
||||||
out= Popen(buf,"w");
|
out= Popen(buf,"w");
|
||||||
#else
|
#else
|
||||||
@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
@@ -247,31 +351,43 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (out!=NULL) {
|
if (out!=NULL) {
|
||||||
@ -326,7 +314,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
/* remove the temporary file */
|
/* remove the temporary file */
|
||||||
unlink(tmpname);
|
unlink(tmpname);
|
||||||
@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
@@ -286,9 +402,17 @@
|
||||||
}
|
}
|
||||||
if (nameRtrn)
|
if (nameRtrn)
|
||||||
nameRtrn[0]= '\0';
|
nameRtrn[0]= '\0';
|
||||||
@ -345,7 +333,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
static FILE *
|
static FILE *
|
||||||
@@ -375,7 +498,6 @@ unsigned missing;
|
@@ -372,7 +496,6 @@
|
||||||
DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined);
|
DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined);
|
||||||
}
|
}
|
||||||
fclose(file);
|
fclose(file);
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
--- hw/xfree86/common/xf86AutoConfig.c.orig 2009-10-07 04:54:44.000000000 +0200
|
--- hw/xfree86/common/xf86AutoConfig.c
|
||||||
+++ hw/xfree86/common/xf86AutoConfig.c 2009-10-07 04:56:23.000000000 +0200
|
+++ hw/xfree86/common/xf86AutoConfig.c
|
||||||
@@ -165,7 +165,11 @@ videoPtrToDriverList(struct pci_device *
|
@@ -176,7 +176,11 @@
|
||||||
case 0x1142: driverList[0] = "apm"; break;
|
case 0x1142: driverList[0] = "apm"; break;
|
||||||
case 0xedd8: driverList[0] = "ark"; break;
|
case 0xedd8: driverList[0] = "ark"; break;
|
||||||
case 0x1a03: driverList[0] = "ast"; break;
|
case 0x1a03: driverList[0] = "ast"; break;
|
||||||
@ -12,12 +12,13 @@
|
|||||||
+ break;
|
+ break;
|
||||||
case 0x102c: driverList[0] = "chips"; break;
|
case 0x102c: driverList[0] = "chips"; break;
|
||||||
case 0x1013: driverList[0] = "cirrus"; break;
|
case 0x1013: driverList[0] = "cirrus"; break;
|
||||||
case 0x8086:
|
case 0x3d3d: driverList[0] = "glint"; break;
|
||||||
@@ -179,7 +183,15 @@ videoPtrToDriverList(struct pci_device *
|
@@ -192,8 +196,20 @@
|
||||||
|
break;
|
||||||
case 0x102b: driverList[0] = "mga"; break;
|
case 0x102b: driverList[0] = "mga"; break;
|
||||||
case 0x10c8: driverList[0] = "neomagic"; break;
|
case 0x10c8: driverList[0] = "neomagic"; break;
|
||||||
case 0x105d: driverList[0] = "i128"; break;
|
|
||||||
- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
|
- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
|
||||||
|
- case 0x1106: driverList[0] = "openchrome"; break;
|
||||||
+ case 0x12d2: driverList[0] = "nv"; break;
|
+ case 0x12d2: driverList[0] = "nv"; break;
|
||||||
+ case 0x10de:
|
+ case 0x10de:
|
||||||
+ driverList[0] = "nvidia";
|
+ driverList[0] = "nvidia";
|
||||||
@ -27,31 +28,11 @@
|
|||||||
+ driverList[2] = "nv";
|
+ driverList[2] = "nv";
|
||||||
+ }
|
+ }
|
||||||
+ break;
|
+ break;
|
||||||
case 0x1163: driverList[0] = "rendition"; break;
|
+ case 0x1106:
|
||||||
case 0x5333:
|
|
||||||
switch (dev->device_id)
|
|
||||||
@@ -205,7 +217,11 @@ videoPtrToDriverList(struct pci_device *
|
|
||||||
case 0x3d3d: driverList[0] = "glint"; break;
|
|
||||||
case 0x1023: driverList[0] = "trident"; break;
|
|
||||||
case 0x100c: driverList[0] = "tseng"; break;
|
|
||||||
- case 0x1106: driverList[0] = "openchrome"; break;
|
|
||||||
+ case 0x1106:
|
|
||||||
+ driverList[0] = "via";
|
+ driverList[0] = "via";
|
||||||
+ driverList[1] = "openchrome";
|
+ driverList[1] = "openchrome";
|
||||||
+ driverList[2] = "unichrome";
|
+ driverList[2] = "unichrome";
|
||||||
+ break;
|
+ break;
|
||||||
case 0x15ad: driverList[0] = "vmware"; break;
|
case 0x1163: driverList[0] = "rendition"; break;
|
||||||
case 0x18ca:
|
case 0x5333:
|
||||||
if (dev->device_id == 0x47)
|
switch (dev->device_id)
|
||||||
@@ -213,6 +229,11 @@ videoPtrToDriverList(struct pci_device *
|
|
||||||
else
|
|
||||||
driverList[0] = "xgi";
|
|
||||||
break;
|
|
||||||
+ case 0x80ee:
|
|
||||||
+ if (dev->device_id == 0xbeef) {
|
|
||||||
+ driverList[0] = "vboxvideo";
|
|
||||||
+ }
|
|
||||||
+ break;
|
|
||||||
default: break;
|
|
||||||
}
|
|
||||||
for (i = 0; (i < returnListMax) && (driverList[i] != NULL); i++) {
|
|
||||||
|
89
events.diff
89
events.diff
@ -1,89 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Events.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
|
||||||
@@ -518,22 +518,26 @@ xf86VTSwitch()
|
|
||||||
* Keep the order: Disable Device > LeaveVT
|
|
||||||
* EnterVT > EnableDevice
|
|
||||||
*/
|
|
||||||
+
|
|
||||||
+ for (i = 0; i < xf86NumScreens; i++)
|
|
||||||
+ xf86Screens[i]->LeaveVT(i, 0);
|
|
||||||
+
|
|
||||||
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
|
||||||
+ if (ih->is_input)
|
|
||||||
+ xf86DisableInputHandler(ih);
|
|
||||||
+ else
|
|
||||||
+ xf86DisableGeneralHandler(ih);
|
|
||||||
+ }
|
|
||||||
+
|
|
||||||
pInfo = xf86InputDevs;
|
|
||||||
while (pInfo) {
|
|
||||||
if (pInfo->dev)
|
|
||||||
DisableDevice(pInfo->dev);
|
|
||||||
pInfo = pInfo->next;
|
|
||||||
}
|
|
||||||
+ /* XXX HACK */
|
|
||||||
xf86EnterServerState(SETUP);
|
|
||||||
- for (i = 0; i < xf86NumScreens; i++)
|
|
||||||
- xf86Screens[i]->LeaveVT(i, 0);
|
|
||||||
|
|
||||||
- for (ih = InputHandlers; ih; ih = ih->next) {
|
|
||||||
- if (ih->is_input)
|
|
||||||
- xf86DisableInputHandler(ih);
|
|
||||||
- else
|
|
||||||
- xf86DisableGeneralHandler(ih);
|
|
||||||
- }
|
|
||||||
xf86AccessLeave(); /* We need this here, otherwise */
|
|
||||||
xf86AccessLeaveState(); /* console won't be restored */
|
|
||||||
|
|
||||||
@@ -563,14 +567,10 @@ xf86VTSwitch()
|
|
||||||
|
|
||||||
pInfo = xf86InputDevs;
|
|
||||||
while (pInfo) {
|
|
||||||
- if (pInfo->dev) {
|
|
||||||
- xf86ReleaseKeys(pInfo->dev);
|
|
||||||
+ if (pInfo->dev)
|
|
||||||
EnableDevice(pInfo->dev);
|
|
||||||
- }
|
|
||||||
pInfo = pInfo->next;
|
|
||||||
}
|
|
||||||
- /* XXX HACK */
|
|
||||||
- xf86ReleaseKeys(inputInfo.keyboard);
|
|
||||||
for (ih = InputHandlers; ih; ih = ih->next) {
|
|
||||||
if (ih->is_input)
|
|
||||||
xf86EnableInputHandler(ih);
|
|
||||||
@@ -580,6 +580,17 @@ xf86VTSwitch()
|
|
||||||
xf86UnblockSIGIO(prevSIGIO);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
+
|
|
||||||
+ pInfo = xf86InputDevs;
|
|
||||||
+ while (pInfo) {
|
|
||||||
+ if (pInfo->dev) {
|
|
||||||
+ xf86ReleaseKeys(pInfo->dev);
|
|
||||||
+ }
|
|
||||||
+ pInfo = pInfo->next;
|
|
||||||
+ }
|
|
||||||
+ /* XXX HACK */
|
|
||||||
+ xf86ReleaseKeys(inputInfo.keyboard);
|
|
||||||
+
|
|
||||||
#ifdef XF86PM
|
|
||||||
if (xf86OSPMClose)
|
|
||||||
xf86OSPMClose();
|
|
||||||
@@ -630,14 +641,10 @@ xf86VTSwitch()
|
|
||||||
|
|
||||||
pInfo = xf86InputDevs;
|
|
||||||
while (pInfo) {
|
|
||||||
- if (pInfo->dev) {
|
|
||||||
- xf86ReleaseKeys(pInfo->dev);
|
|
||||||
+ if (pInfo->dev)
|
|
||||||
EnableDevice(pInfo->dev);
|
|
||||||
- }
|
|
||||||
pInfo = pInfo->next;
|
|
||||||
}
|
|
||||||
- /* XXX HACK */
|
|
||||||
- xf86ReleaseKeys(inputInfo.keyboard);
|
|
||||||
|
|
||||||
for (ih = InputHandlers; ih; ih = ih->next) {
|
|
||||||
if (ih->is_input)
|
|
@ -1,62 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Bus.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Bus.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Bus.c
|
|
||||||
@@ -429,7 +429,7 @@ xf86GetEntityInfo(int entityIndex)
|
|
||||||
EntityInfoPtr pEnt;
|
|
||||||
int i;
|
|
||||||
|
|
||||||
- if (entityIndex >= xf86NumEntities)
|
|
||||||
+ if (entityIndex < 0 || entityIndex >= xf86NumEntities)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
pEnt = xnfcalloc(1,sizeof(EntityInfoRec));
|
|
||||||
@@ -1816,6 +1816,20 @@ checkRoutingForScreens(xf86State state)
|
|
||||||
xf86FreeResList(pResVGA);
|
|
||||||
}
|
|
||||||
|
|
||||||
+CARD16
|
|
||||||
+xf86BusesClaimed(void)
|
|
||||||
+{
|
|
||||||
+ CARD16 ret = 0;
|
|
||||||
+
|
|
||||||
+ if (pciSlotClaimed) ret |= 1 << BUS_PCI;
|
|
||||||
+ if (fbSlotClaimed) ret |= 1 << BUS_NONE;
|
|
||||||
+#if (defined(__sparc__) || defined(__sparc)) && !defined(__OpenBSD__)
|
|
||||||
+ if (sbusSlotClaimed) ret |= 1 << BUS_SBUS;
|
|
||||||
+#endif
|
|
||||||
+
|
|
||||||
+ return ret;
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
/*
|
|
||||||
* xf86PostProbe() -- Allocate all non conflicting resources
|
|
||||||
* This function gets called by xf86Init().
|
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Priv.h
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Priv.h
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Priv.h
|
|
||||||
@@ -123,6 +123,7 @@ extern RootWinPropPtr *xf86RegisteredPro
|
|
||||||
|
|
||||||
/* xf86Bus.c */
|
|
||||||
|
|
||||||
+CARD16 xf86BusesClaimed(void);
|
|
||||||
void xf86BusProbe(void);
|
|
||||||
void xf86ChangeBusIndex(int oldIndex, int newIndex);
|
|
||||||
void xf86AccessInit(void);
|
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86fbBus.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86fbBus.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86fbBus.c
|
|
||||||
@@ -58,7 +58,10 @@ xf86ClaimFbSlot(DriverPtr drvp, int chip
|
|
||||||
{
|
|
||||||
EntityPtr p;
|
|
||||||
int num;
|
|
||||||
-
|
|
||||||
+
|
|
||||||
+ if (xf86BusesClaimed() & ~(1 << BUS_NONE))
|
|
||||||
+ return -1;
|
|
||||||
+
|
|
||||||
num = xf86AllocateEntity();
|
|
||||||
p = xf86Entities[num];
|
|
||||||
p->driver = drvp;
|
|
@ -25,29 +25,28 @@ Subject: [PATCH] Fixed SYNC extension trigger BlockHandler test.
|
|||||||
This fixes a problem introduced with commit 1f4fb022 where an idle counter
|
This fixes a problem introduced with commit 1f4fb022 where an idle counter
|
||||||
expires unnoticed.
|
expires unnoticed.
|
||||||
Index: xorg-server-1.6.3.901/Xext/sync.c
|
Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- xorg-server-1.6.3.901.orig/Xext/sync.c
|
--- xorg-server-1.7.4/Xext/sync.c
|
||||||
+++ xorg-server-1.6.3.901/Xext/sync.c
|
+++ xorg-server-1.7.4/Xext/sync.c
|
||||||
@@ -222,8 +222,7 @@ SyncCreateCounter(
|
@@ -94,7 +94,7 @@
|
||||||
);
|
#define XSyncCAAllTrigger \
|
||||||
|
(XSyncCACounter | XSyncCAValueType | XSyncCAValue | XSyncCATestType)
|
||||||
|
|
||||||
static void SyncComputeBracketValues(
|
-static void SyncComputeBracketValues(SyncCounter *, Bool);
|
||||||
- SyncCounter * /* pCounter */,
|
+static void SyncComputeBracketValues(SyncCounter *);
|
||||||
- Bool /* startOver */
|
|
||||||
+ SyncCounter * /* pCounter */
|
|
||||||
);
|
|
||||||
|
|
||||||
static void
|
static void SyncInitServerTime(void);
|
||||||
@@ -333,7 +332,7 @@ SyncDeleteTriggerFromCounter(pTrigger)
|
|
||||||
|
@@ -167,7 +167,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
if (IsSystemCounter(pTrigger->pCounter))
|
if (IsSystemCounter(pTrigger->pCounter))
|
||||||
- SyncComputeBracketValues(pTrigger->pCounter, /*startOver*/ TRUE);
|
- SyncComputeBracketValues(pTrigger->pCounter, /*startOver*/ TRUE);
|
||||||
+ SyncComputeBracketValues(pTrigger->pCounter);
|
+ SyncComputeBracketValues(pTrigger->pCounter);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -361,7 +360,7 @@ SyncAddTriggerToCounter(pTrigger)
|
@@ -194,7 +194,7 @@
|
||||||
pTrigger->pCounter->pTriglist = pCur;
|
pTrigger->pCounter->pTriglist = pCur;
|
||||||
|
|
||||||
if (IsSystemCounter(pTrigger->pCounter))
|
if (IsSystemCounter(pTrigger->pCounter))
|
||||||
@ -56,16 +55,16 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
|||||||
|
|
||||||
return Success;
|
return Success;
|
||||||
}
|
}
|
||||||
@@ -531,7 +530,7 @@ SyncInitTrigger(client, pTrigger, counte
|
@@ -351,7 +351,7 @@
|
||||||
}
|
}
|
||||||
else if (IsSystemCounter(pCounter))
|
else if (IsSystemCounter(pCounter))
|
||||||
{
|
{
|
||||||
- SyncComputeBracketValues(pCounter, /*startOver*/ TRUE);
|
- SyncComputeBracketValues(pCounter, /*startOver*/ TRUE);
|
||||||
+ SyncComputeBracketValues(pCounter);
|
+ SyncComputeBracketValues(pCounter);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Success;
|
return Success;
|
||||||
@@ -829,13 +828,14 @@ SyncChangeCounter(pCounter, newval)
|
@@ -640,13 +640,14 @@
|
||||||
for (ptl = pCounter->pTriglist; ptl; ptl = pnext)
|
for (ptl = pCounter->pTriglist; ptl; ptl = pnext)
|
||||||
{
|
{
|
||||||
pnext = ptl->next;
|
pnext = ptl->next;
|
||||||
@ -82,18 +81,16 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -1117,9 +1117,8 @@ SyncDestroySystemCounter(pSysCounter)
|
@@ -913,7 +914,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
-SyncComputeBracketValues(pCounter, startOver)
|
-SyncComputeBracketValues(SyncCounter *pCounter, Bool startOver)
|
||||||
+SyncComputeBracketValues(pCounter)
|
+SyncComputeBracketValues(SyncCounter *pCounter)
|
||||||
SyncCounter *pCounter;
|
|
||||||
- Bool startOver;
|
|
||||||
{
|
{
|
||||||
SyncTriggerList *pCur;
|
SyncTriggerList *pCur;
|
||||||
SyncTrigger *pTrigger;
|
SyncTrigger *pTrigger;
|
||||||
@@ -1136,58 +1135,53 @@ SyncComputeBracketValues(pCounter, start
|
@@ -930,58 +931,53 @@
|
||||||
if (ct == XSyncCounterNeverChanges)
|
if (ct == XSyncCounterNeverChanges)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
@ -191,7 +188,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
|||||||
} /* end for each trigger */
|
} /* end for each trigger */
|
||||||
|
|
||||||
if (pnewgtval || pnewltval)
|
if (pnewgtval || pnewltval)
|
||||||
@@ -2541,11 +2535,17 @@ IdleTimeQueryValue (pointer pCounter, CA
|
@@ -2273,11 +2269,17 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -214,7 +211,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
|||||||
|
|
||||||
if (!pIdleTimeValueLess && !pIdleTimeValueGreater)
|
if (!pIdleTimeValueLess && !pIdleTimeValueGreater)
|
||||||
return;
|
return;
|
||||||
@@ -2563,46 +2563,57 @@ IdleTimeBlockHandler(pointer env, struct
|
@@ -2295,46 +2297,57 @@
|
||||||
* want level or edge trigger. Check the trigger list against the
|
* want level or edge trigger. Check the trigger list against the
|
||||||
* current idle time, and if any succeed, bomb out of select()
|
* current idle time, and if any succeed, bomb out of select()
|
||||||
* immediately so we can reschedule.
|
* immediately so we can reschedule.
|
||||||
|
10
fpic.diff
10
fpic.diff
@ -1,10 +1,10 @@
|
|||||||
Index: hw/xfree86/parser/Makefile.am
|
Index: hw/xfree86/parser/Makefile.am
|
||||||
===================================================================
|
================================================================================
|
||||||
--- hw/xfree86/parser/Makefile.am.orig
|
--- hw/xfree86/parser/Makefile.am
|
||||||
+++ hw/xfree86/parser/Makefile.am
|
+++ hw/xfree86/parser/Makefile.am
|
||||||
@@ -22,7 +22,7 @@ libxf86config_a_SOURCES = \
|
@@ -33,7 +33,7 @@
|
||||||
DRI.c \
|
$(INTERNAL_SOURCES)
|
||||||
Extensions.c
|
libxf86config_a_CFLAGS = $(AM_CFLAGS)
|
||||||
|
|
||||||
-AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
|
-AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
|
||||||
+AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS) -fPIC
|
+AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS) -fPIC
|
||||||
|
@ -1,22 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/xkb/xkbPrKeyEv.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/xkb/xkbPrKeyEv.c
|
|
||||||
+++ xorg-server-1.6.3.901/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))))) {
|
|
||||||
- XkbLastRepeatEvent= (pointer)&xE;
|
|
||||||
- if (xiEvent)
|
|
||||||
- xE->u.u.type = DeviceKeyPress;
|
|
||||||
- else
|
|
||||||
- xE->u.u.type = KeyPress;
|
|
||||||
- XkbHandleActions(keybd,keybd,xE,count);
|
|
||||||
- if (xiEvent)
|
|
||||||
- xE->u.u.type = DeviceKeyRelease;
|
|
||||||
- else
|
|
||||||
- xE->u.u.type = KeyRelease;
|
|
||||||
- XkbHandleActions(keybd,keybd,xE,count);
|
|
||||||
XkbLastRepeatEvent= NULL;
|
|
||||||
return;
|
|
||||||
}
|
|
@ -1,13 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/dri/dri.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/dri/dri.c
|
|
||||||
+++ xorg-server-1.6.3.901/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)
|
|
||||||
-extern Bool noPanoramiXExtension;
|
|
||||||
+Bool noPanoramiXExtension = TRUE;
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static int DRIEntPrivIndex = -1;
|
|
@ -1,15 +0,0 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/loader/loadmod.c
|
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/loader/loadmod.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/loader/loadmod.c
|
|
||||||
@@ -401,8 +401,8 @@ FindModuleInSubdir(const char *dirpath,
|
|
||||||
while ((direntry = readdir(dir))) {
|
|
||||||
if (direntry->d_name[0] == '.')
|
|
||||||
continue;
|
|
||||||
- if ((stat(direntry->d_name, &stat_buf) == 0) && S_ISDIR(stat_buf.st_mode)) {
|
|
||||||
- snprintf(tmpBuf, PATH_MAX, "%s/%s", dirpath, direntry->d_name);
|
|
||||||
+ snprintf(tmpBuf, PATH_MAX, "%s/%s", dirpath, direntry->d_name);
|
|
||||||
+ if ((stat(tmpBuf, &stat_buf) == 0) && S_ISDIR(stat_buf.st_mode)) {
|
|
||||||
if ((ret = FindModuleInSubdir(tmpBuf, module)))
|
|
||||||
break;
|
|
||||||
continue;
|
|
@ -1,11 +1,11 @@
|
|||||||
--- configure.ac.orig 2009-11-27 21:59:22.000000000 +0100
|
--- configure.ac
|
||||||
+++ configure.ac 2009-11-27 22:03:59.000000000 +0100
|
+++ configure.ac
|
||||||
@@ -466,7 +466,7 @@
|
@@ -491,7 +491,7 @@
|
||||||
AC_ARG_WITH(fontdir, AS_HELP_STRING([--with-fontdir=FONTDIR], [Path to top level dir where fonts are installed (default: ${libdir}/X11/fonts)]),
|
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="$withval" ],
|
||||||
[ FONTDIR="${libdir}/X11/fonts" ])
|
[ FONTDIR="${libdir}/X11/fonts" ])
|
||||||
-DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/truetype/,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled"
|
-DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled"
|
||||||
+DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/truetype/,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled,${FONTDIR}/URW,${FONTDIR}/cyrillic"
|
+DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled,${FONTDIR}/URW,${FONTDIR}/cyrillic"
|
||||||
case $host_os in
|
case $host_os in
|
||||||
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
||||||
esac
|
esac
|
||||||
|
@ -1,12 +0,0 @@
|
|||||||
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)
|
|
||||||
{
|
|
||||||
+ return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
|
@ -1,11 +1,11 @@
|
|||||||
Index: hw/xfree86/common/xf86Globals.c
|
Index: hw/xfree86/common/xf86Globals.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- hw/xfree86/common/xf86Globals.c.orig
|
--- hw/xfree86/common/xf86Globals.c
|
||||||
+++ hw/xfree86/common/xf86Globals.c
|
+++ hw/xfree86/common/xf86Globals.c
|
||||||
@@ -141,7 +141,7 @@ xf86InfoRec xf86Info = {
|
@@ -143,7 +143,7 @@
|
||||||
|
#endif
|
||||||
};
|
};
|
||||||
const char *xf86ConfigFile = NULL;
|
const char *xf86ConfigFile = NULL;
|
||||||
const char *xf86InputDeviceList = NULL;
|
|
||||||
-const char *xf86ModulePath = DEFAULT_MODULE_PATH;
|
-const char *xf86ModulePath = DEFAULT_MODULE_PATH;
|
||||||
+const char *xf86ModulePath = DEFAULT_MODULE_PATH "/updates," DEFAULT_MODULE_PATH;
|
+const char *xf86ModulePath = DEFAULT_MODULE_PATH "/updates," DEFAULT_MODULE_PATH;
|
||||||
MessageType xf86ModPathFrom = X_DEFAULT;
|
MessageType xf86ModPathFrom = X_DEFAULT;
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: linux/lnx_init.c
|
Index: linux/lnx_init.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- linux/lnx_init.c.orig
|
--- linux/lnx_init.c
|
||||||
+++ linux/lnx_init.c
|
+++ linux/lnx_init.c
|
||||||
@@ -252,9 +252,6 @@ xf86OpenConsole(void)
|
@@ -230,9 +230,6 @@
|
||||||
{
|
{
|
||||||
struct termios nTty;
|
struct termios nTty;
|
||||||
|
|
||||||
@ -12,7 +12,7 @@ Index: linux/lnx_init.c
|
|||||||
/*
|
/*
|
||||||
* now get the VT. This _must_ succeed, or else fail completely.
|
* now get the VT. This _must_ succeed, or else fail completely.
|
||||||
*/
|
*/
|
||||||
@@ -266,6 +263,10 @@ xf86OpenConsole(void)
|
@@ -244,6 +241,10 @@
|
||||||
FatalError("xf86OpenConsole: VT_WAITACTIVE failed: %s\n",
|
FatalError("xf86OpenConsole: VT_WAITACTIVE failed: %s\n",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
|
|
||||||
@ -23,7 +23,7 @@ Index: linux/lnx_init.c
|
|||||||
if (ioctl(xf86Info.consoleFd, VT_GETMODE, &VT) < 0)
|
if (ioctl(xf86Info.consoleFd, VT_GETMODE, &VT) < 0)
|
||||||
FatalError("xf86OpenConsole: VT_GETMODE failed %s\n",
|
FatalError("xf86OpenConsole: VT_GETMODE failed %s\n",
|
||||||
strerror(errno));
|
strerror(errno));
|
||||||
@@ -384,6 +385,11 @@ xf86CloseConsole()
|
@@ -353,6 +354,11 @@
|
||||||
|
|
||||||
if (VTSwitch)
|
if (VTSwitch)
|
||||||
{
|
{
|
||||||
@ -35,7 +35,7 @@ Index: linux/lnx_init.c
|
|||||||
/*
|
/*
|
||||||
* Perform a switch back to the active VT when we were started
|
* Perform a switch back to the active VT when we were started
|
||||||
*/
|
*/
|
||||||
@@ -398,11 +404,6 @@ xf86CloseConsole()
|
@@ -367,11 +373,6 @@
|
||||||
activeVT = -1;
|
activeVT = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -47,12 +47,10 @@ Index: linux/lnx_init.c
|
|||||||
}
|
}
|
||||||
close(xf86Info.consoleFd); /* make the vt-manager happy */
|
close(xf86Info.consoleFd); /* make the vt-manager happy */
|
||||||
|
|
||||||
Index: shared/VTsw_usl.c
|
--- shared/VTsw_usl.c
|
||||||
===================================================================
|
|
||||||
--- shared/VTsw_usl.c.orig
|
|
||||||
+++ shared/VTsw_usl.c
|
+++ shared/VTsw_usl.c
|
||||||
@@ -62,15 +62,15 @@ Bool
|
@@ -62,15 +62,15 @@
|
||||||
xf86VTSwitchAway()
|
xf86VTSwitchAway(void)
|
||||||
{
|
{
|
||||||
xf86Info.vtRequestsPending = FALSE;
|
xf86Info.vtRequestsPending = FALSE;
|
||||||
+#ifdef OSSWITCHAWAY
|
+#ifdef OSSWITCHAWAY
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
Index: 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
|
||||||
+++ hw/xfree86/os-support/linux/lnx_acpi.c
|
+++ hw/xfree86/os-support/linux/lnx_acpi.c
|
||||||
@@ -32,8 +32,10 @@
|
@@ -32,8 +32,10 @@
|
||||||
#define ACPI_VIDEO_HEAD_INVALID (~0u - 1)
|
#define ACPI_VIDEO_HEAD_INVALID (~0u - 1)
|
||||||
@ -13,7 +13,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
|||||||
PMClose lnxACPIOpen(void);
|
PMClose lnxACPIOpen(void);
|
||||||
|
|
||||||
/* in milliseconds */
|
/* in milliseconds */
|
||||||
@@ -52,6 +54,22 @@ lnxACPIReopen(OsTimerPtr timer, CARD32 t
|
@@ -52,6 +54,22 @@
|
||||||
|
|
||||||
#define LINE_LENGTH 80
|
#define LINE_LENGTH 80
|
||||||
|
|
||||||
@ -36,7 +36,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
|||||||
static int
|
static int
|
||||||
lnxACPIGetEventFromOs(int fd, pmEvent *events, int num)
|
lnxACPIGetEventFromOs(int fd, pmEvent *events, int num)
|
||||||
{
|
{
|
||||||
@@ -127,16 +145,13 @@ lnxACPIConfirmEventToOs(int fd, pmEvent
|
@@ -127,15 +145,14 @@
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -48,14 +48,13 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
|||||||
int fd;
|
int fd;
|
||||||
struct sockaddr_un addr;
|
struct sockaddr_un addr;
|
||||||
int r = -1;
|
int r = -1;
|
||||||
|
static int warned = 0;
|
||||||
|
|
||||||
-#ifdef DEBUG
|
- DebugF("ACPI: OSPMOpen called\n");
|
||||||
- ErrorF("ACPI: OSPMOpen called\n");
|
|
||||||
-#endif
|
|
||||||
if (ACPIihPtr || !xf86Info.pmFlag)
|
if (ACPIihPtr || !xf86Info.pmFlag)
|
||||||
return NULL;
|
return NULL;
|
||||||
|
|
||||||
@@ -164,6 +179,27 @@ lnxACPIOpen(void)
|
@@ -164,6 +181,27 @@
|
||||||
return lnxCloseACPI;
|
return lnxCloseACPI;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -83,7 +82,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
|||||||
static void
|
static void
|
||||||
lnxCloseACPI(void)
|
lnxCloseACPI(void)
|
||||||
{
|
{
|
||||||
@@ -177,5 +213,11 @@ lnxCloseACPI(void)
|
@@ -175,5 +213,11 @@
|
||||||
shutdown(fd, 2);
|
shutdown(fd, 2);
|
||||||
close(fd);
|
close(fd);
|
||||||
ACPIihPtr = NULL;
|
ACPIihPtr = NULL;
|
||||||
@ -95,9 +94,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
|||||||
+ }
|
+ }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Index: hw/xfree86/os-support/linux/lnx_apm.c
|
--- 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
|
+++ hw/xfree86/os-support/linux/lnx_apm.c
|
||||||
@@ -12,6 +12,7 @@
|
@@ -12,6 +12,7 @@
|
||||||
|
|
||||||
@ -107,7 +104,7 @@ Index: hw/xfree86/os-support/linux/lnx_apm.c
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_APM
|
#ifdef HAVE_APM
|
||||||
@@ -150,6 +151,14 @@ xf86OSPMOpen(void)
|
@@ -150,6 +151,14 @@
|
||||||
ret = lnxAPMOpen();
|
ret = lnxAPMOpen();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -1,25 +0,0 @@
|
|||||||
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" ])
|
|
||||||
-DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/TTF/,${FONTDIR}/OTF,${FONTDIR}/Type1/,${FONTDIR}/100dpi:unscaled,${FONTDIR}/75dpi:unscaled"
|
|
||||||
+DEFAULT_FONT_PATH="${FONTDIR}/misc:unscaled,${FONTDIR}/truetype/,${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: 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\"" \
|
|
||||||
+ -DTRUETYPEFONTPATH="\"$(BASE_FONT_PATH)/truetype\"" \
|
|
||||||
-DDPI75FONTPATH="\"$(BASE_FONT_PATH)/75dpi:unscaled\"" \
|
|
||||||
-DDPI100FONTPATH="\"$(BASE_FONT_PATH)/100dpi:unscaled\"" \
|
|
||||||
-DMODULEPATH=\"$(DEFAULT_MODULE_PATH)\"
|
|
@ -1,14 +1,25 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86AutoConfig.c
|
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86AutoConfig.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86AutoConfig.c
|
--- xorg-server-1.7.4/hw/xfree86/common/xf86AutoConfig.c
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86AutoConfig.c
|
+++ xorg-server-1.7.4/hw/xfree86/common/xf86AutoConfig.c
|
||||||
@@ -175,6 +175,9 @@ videoPtrToDriverList(struct pci_device *
|
@@ -186,12 +186,14 @@
|
||||||
|
case 0x3d3d: driverList[0] = "glint"; break;
|
||||||
|
case 0x105d: driverList[0] = "i128"; break;
|
||||||
case 0x8086:
|
case 0x8086:
|
||||||
if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) {
|
- if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) {
|
||||||
driverList[0] = "i740";
|
- driverList[0] = "i740";
|
||||||
+ } if ((dev->device_id == 0x8109) || (dev->device_id == 0x8108) || (dev->device_id == 0x4102) ) {
|
- } else if (dev->device_id == 0x8108) {
|
||||||
+ driverList[0] = "psb";
|
- break; /* "hooray" for poulsbo */
|
||||||
+ driverList[1] = "psb_drv";
|
- } else {
|
||||||
} else {
|
- driverList[0] = "intel";
|
||||||
driverList[0] = "intel";
|
+ switch (dev->device_id)
|
||||||
driverList[1] = "i810";
|
+ {
|
||||||
|
+ case 0x00d1: case 0x7800:
|
||||||
|
+ driverList[0] = "i740"; break;
|
||||||
|
+ case 0x8109: case 0x8108: case 0x4102:
|
||||||
|
+ driverList[0] = "psb"; driverList[1] = "psb_drv"; break;
|
||||||
|
+ default:
|
||||||
|
+ driverList[0] = "intel"; break;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 0x102b: driverList[0] = "mga"; break;
|
||||||
|
@ -1,3 +0,0 @@
|
|||||||
version https://git-lfs.github.com/spec/v1
|
|
||||||
oid sha256:f3c0e43cf73e7d438350016cabd9957dc000ded9c5fdeebf84a02df61963b2ce
|
|
||||||
size 4678406
|
|
3
xorg-server-1.7.4.tar.bz2
Normal file
3
xorg-server-1.7.4.tar.bz2
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:b8ec11b3f2c6f84c21e8cd9804672ba6e27fda3e913d58dd947205ea253e33f8
|
||||||
|
size 4919597
|
@ -1,6 +1,6 @@
|
|||||||
Index: hw/dmx/Makefile.am
|
Index: hw/dmx/Makefile.am
|
||||||
===================================================================
|
================================================================================
|
||||||
--- hw/dmx/Makefile.am.orig
|
--- hw/dmx/Makefile.am
|
||||||
+++ hw/dmx/Makefile.am
|
+++ hw/dmx/Makefile.am
|
||||||
@@ -1,6 +1,6 @@
|
@@ -1,6 +1,6 @@
|
||||||
DIST_SUBDIRS = input vnc config glxProxy examples doc
|
DIST_SUBDIRS = input vnc config glxProxy examples doc
|
||||||
@ -10,11 +10,9 @@ Index: hw/dmx/Makefile.am
|
|||||||
bin_PROGRAMS = Xdmx
|
bin_PROGRAMS = Xdmx
|
||||||
|
|
||||||
if XINERAMA
|
if XINERAMA
|
||||||
Index: hw/dmx/dmx-config.h
|
--- hw/dmx/dmx-config.h
|
||||||
===================================================================
|
|
||||||
--- hw/dmx/dmx-config.h.orig
|
|
||||||
+++ hw/dmx/dmx-config.h
|
+++ hw/dmx/dmx-config.h
|
||||||
@@ -72,8 +72,8 @@
|
@@ -72,7 +72,7 @@
|
||||||
/* Enable the DMX extension */
|
/* Enable the DMX extension */
|
||||||
#define DMXEXT
|
#define DMXEXT
|
||||||
|
|
||||||
@ -23,25 +21,20 @@ Index: hw/dmx/dmx-config.h
|
|||||||
+/* Disable VNC ability */
|
+/* Disable VNC ability */
|
||||||
+#undef DMXVNC
|
+#undef DMXVNC
|
||||||
|
|
||||||
/* Disable the extensions that are not currently supported */
|
#endif /* DMX_CONFIG_H */
|
||||||
#undef MULTIBUFFER
|
--- hw/dmx/input/Makefile.am
|
||||||
Index: hw/dmx/input/Makefile.am
|
|
||||||
===================================================================
|
|
||||||
--- hw/dmx/input/Makefile.am.orig
|
|
||||||
+++ hw/dmx/input/Makefile.am
|
+++ hw/dmx/input/Makefile.am
|
||||||
@@ -65,7 +65,6 @@ AM_CFLAGS = $(DIX_CFLAGS) \
|
@@ -61,7 +61,6 @@
|
||||||
|
AM_CFLAGS = $(DIX_CFLAGS) \
|
||||||
-I$(top_srcdir)/hw/dmx \
|
-I$(top_srcdir)/hw/dmx \
|
||||||
$(GLX_INCS) \
|
|
||||||
-DHAVE_DMX_CONFIG_H \
|
-DHAVE_DMX_CONFIG_H \
|
||||||
- -DDMXVNC=1 \
|
- -DDMXVNC=1 \
|
||||||
$(GLX_DEFS) \
|
$(GLX_DEFS) \
|
||||||
@DMXMODULES_CFLAGS@
|
@DMXMODULES_CFLAGS@
|
||||||
|
|
||||||
Index: hw/dmx/vnc/Makefile.am
|
--- hw/dmx/vnc/Makefile.am
|
||||||
===================================================================
|
|
||||||
--- hw/dmx/vnc/Makefile.am.orig
|
|
||||||
+++ hw/dmx/vnc/Makefile.am
|
+++ hw/dmx/vnc/Makefile.am
|
||||||
@@ -37,7 +37,6 @@ AM_CFLAGS = \
|
@@ -37,7 +37,6 @@
|
||||||
-I$(top_srcdir)/hw/xfree86/common \
|
-I$(top_srcdir)/hw/xfree86/common \
|
||||||
-DHAVE_DMX_CONFIG_H \
|
-DHAVE_DMX_CONFIG_H \
|
||||||
$(DIX_CFLAGS) \
|
$(DIX_CFLAGS) \
|
||||||
|
@ -1,8 +1,27 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/vnc/cursor.c
|
Index: xorg-server-1.6.3.901/hw/vnc/cursor.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/cursor.c
|
--- xorg-server-1.7.4/configure.ac
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/cursor.c
|
+++ xorg-server-1.7.4/configure.ac
|
||||||
@@ -262,7 +262,7 @@ rfbSendCursorPos(cl, pScreen)
|
@@ -1407,7 +1407,7 @@
|
||||||
|
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"
|
||||||
|
+ XVNC_LIBS="$XEXT_LIB $MAIN_LIB $CONFIG_LIB $XSERVER_LIBS $FB_LIB $MI_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 $FIXES_LIB $LIBS"
|
||||||
|
AC_SUBST([XVNC_LIBS])
|
||||||
|
|
||||||
|
if test "x$GLX" = xyes; then
|
||||||
|
--- xorg-server-1.7.4/hw/vnc/cursor.c
|
||||||
|
+++ xorg-server-1.7.4/hw/vnc/cursor.c
|
||||||
|
@@ -33,6 +33,7 @@
|
||||||
|
#include "sprite.h"
|
||||||
|
#include "cursorstr.h"
|
||||||
|
#include "servermd.h"
|
||||||
|
+#include "inputstr.h"
|
||||||
|
|
||||||
|
|
||||||
|
/* Copied from Xvnc/lib/font/util/utilbitmap.c */
|
||||||
|
@@ -262,7 +263,7 @@
|
||||||
|
|
||||||
#if XFREE86VNC
|
#if XFREE86VNC
|
||||||
if (pScreen == pCursorScreen)
|
if (pScreen == pCursorScreen)
|
||||||
@ -11,11 +30,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/cursor.c
|
|||||||
#else
|
#else
|
||||||
rfbSpriteGetCursorPos(pScreen, &x, &y);
|
rfbSpriteGetCursorPos(pScreen, &x, &y);
|
||||||
#endif
|
#endif
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
--- xorg-server-1.7.4/hw/vnc/cutpaste.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/cutpaste.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/cutpaste.c
|
@@ -66,7 +66,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
|
||||||
@@ -66,7 +66,7 @@ rfbSetXCutText(char *str, int len)
|
|
||||||
event.u.selectionClear.time = GetTimeInMillis();
|
event.u.selectionClear.time = GetTimeInMillis();
|
||||||
event.u.selectionClear.window = pSel->window;
|
event.u.selectionClear.window = pSel->window;
|
||||||
event.u.selectionClear.atom = pSel->selection;
|
event.u.selectionClear.atom = pSel->selection;
|
||||||
@ -24,11 +41,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
|||||||
NoEventMask, NoEventMask /* CantBeFiltered */,
|
NoEventMask, NoEventMask /* CantBeFiltered */,
|
||||||
NullGrab);
|
NullGrab);
|
||||||
}
|
}
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
--- xorg-server-1.7.4/hw/vnc/dispcur.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/dispcur.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/dispcur.c
|
@@ -74,7 +74,10 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|
||||||
@@ -74,7 +74,10 @@ in this Software without prior written a
|
|
||||||
|
|
||||||
/* per-screen private data */
|
/* per-screen private data */
|
||||||
|
|
||||||
@ -40,7 +55,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
|
|
||||||
static Bool rfbDCCloseScreen(int index, ScreenPtr pScreen);
|
static Bool rfbDCCloseScreen(int index, ScreenPtr pScreen);
|
||||||
|
|
||||||
@@ -205,7 +208,7 @@ rfbDCRealizeCursor (pScreen, pCursor)
|
@@ -205,7 +208,7 @@
|
||||||
CursorPtr pCursor;
|
CursorPtr pCursor;
|
||||||
{
|
{
|
||||||
if (pCursor->bits->refcnt <= 1)
|
if (pCursor->bits->refcnt <= 1)
|
||||||
@ -49,7 +64,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -303,7 +306,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP
|
@@ -303,7 +306,7 @@
|
||||||
xfree ((pointer) pPriv);
|
xfree ((pointer) pPriv);
|
||||||
return (rfbDCCursorPtr)NULL;
|
return (rfbDCCursorPtr)NULL;
|
||||||
}
|
}
|
||||||
@ -58,7 +73,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
return pPriv;
|
return pPriv;
|
||||||
}
|
}
|
||||||
pPriv->pPicture = 0;
|
pPriv->pPicture = 0;
|
||||||
@@ -321,7 +324,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP
|
@@ -321,7 +324,7 @@
|
||||||
xfree ((pointer) pPriv);
|
xfree ((pointer) pPriv);
|
||||||
return (rfbDCCursorPtr)NULL;
|
return (rfbDCCursorPtr)NULL;
|
||||||
}
|
}
|
||||||
@ -67,7 +82,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
|
|
||||||
/* create the two sets of bits, clipping as appropriate */
|
/* create the two sets of bits, clipping as appropriate */
|
||||||
|
|
||||||
@@ -368,7 +371,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor)
|
@@ -368,7 +371,7 @@
|
||||||
rfbDCCursorPtr pPriv;
|
rfbDCCursorPtr pPriv;
|
||||||
|
|
||||||
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
||||||
@ -76,7 +91,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
if (pPriv && (pCursor->bits->refcnt <= 1))
|
if (pPriv && (pCursor->bits->refcnt <= 1))
|
||||||
{
|
{
|
||||||
if (pPriv->sourceBits)
|
if (pPriv->sourceBits)
|
||||||
@@ -380,7 +383,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor)
|
@@ -380,7 +383,7 @@
|
||||||
FreePicture (pPriv->pPicture, 0);
|
FreePicture (pPriv->pPicture, 0);
|
||||||
#endif
|
#endif
|
||||||
xfree ((pointer) pPriv);
|
xfree ((pointer) pPriv);
|
||||||
@ -85,7 +100,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
}
|
}
|
||||||
return TRUE;
|
return TRUE;
|
||||||
}
|
}
|
||||||
@@ -439,7 +442,7 @@ rfbDCPutUpCursor (pScreen, pCursor, x, y
|
@@ -439,7 +442,7 @@
|
||||||
WindowPtr pWin;
|
WindowPtr pWin;
|
||||||
|
|
||||||
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
||||||
@ -94,7 +109,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
if (!pPriv)
|
if (!pPriv)
|
||||||
{
|
{
|
||||||
pPriv = rfbDCRealize(pScreen, pCursor);
|
pPriv = rfbDCRealize(pScreen, pCursor);
|
||||||
@@ -690,7 +693,7 @@ rfbDCMoveCursor (pScreen, pCursor, x, y,
|
@@ -690,7 +693,7 @@
|
||||||
PixmapPtr pTemp;
|
PixmapPtr pTemp;
|
||||||
|
|
||||||
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
||||||
@ -103,11 +118,17 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
|||||||
if (!pPriv)
|
if (!pPriv)
|
||||||
{
|
{
|
||||||
pPriv = rfbDCRealize(pScreen, pCursor);
|
pPriv = rfbDCRealize(pScreen, pCursor);
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
--- xorg-server-1.7.4/hw/vnc/init.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/init.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/init.c
|
@@ -90,6 +90,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/init.c
|
#include "dix.h"
|
||||||
@@ -138,7 +138,7 @@ static void rfbCrossScreen(ScreenPtr pSc
|
#include "micmap.h"
|
||||||
|
#include "rfb.h"
|
||||||
|
+#include "xserver-properties.h"
|
||||||
|
|
||||||
|
#ifdef CORBA
|
||||||
|
#include <vncserverctrl.h>
|
||||||
|
@@ -138,7 +139,7 @@
|
||||||
|
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -116,7 +137,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
|||||||
{
|
{
|
||||||
#if 0
|
#if 0
|
||||||
DeviceIntPtr pDev = NULL;
|
DeviceIntPtr pDev = NULL;
|
||||||
@@ -775,8 +775,8 @@ InitInput(argc, argv)
|
@@ -775,8 +776,8 @@
|
||||||
char *argv[];
|
char *argv[];
|
||||||
{
|
{
|
||||||
DeviceIntPtr p, k;
|
DeviceIntPtr p, k;
|
||||||
@ -127,71 +148,102 @@ Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
|||||||
RegisterKeyboardDevice(k);
|
RegisterKeyboardDevice(k);
|
||||||
RegisterPointerDevice(p);
|
RegisterPointerDevice(p);
|
||||||
|
|
||||||
@@ -843,7 +843,6 @@ rfbMouseProc(pDevice, onoff)
|
@@ -804,7 +805,7 @@
|
||||||
|
case DEVICE_INIT:
|
||||||
|
vncSetKeyboardDevice(pDevice);
|
||||||
|
KbdDeviceInit(pDevice, &keySyms, modMap);
|
||||||
|
- InitKeyboardDeviceStruct(pDev, &keySyms, modMap,
|
||||||
|
+ InitKeyboardDeviceStruct(pDevice, NULL,
|
||||||
|
(BellProcPtr)rfbSendBell,
|
||||||
|
(KbdCtrlProcPtr)NoopDDA);
|
||||||
|
break;
|
||||||
|
@@ -831,6 +832,8 @@
|
||||||
|
int onoff;
|
||||||
|
{
|
||||||
|
BYTE map[6];
|
||||||
|
+ Atom btn_labels[5] = {0};
|
||||||
|
+ Atom axes_labels[2] = {0};
|
||||||
|
DevicePtr pDev = (DevicePtr)pDevice;
|
||||||
|
|
||||||
|
switch (onoff)
|
||||||
|
@@ -842,10 +845,16 @@
|
||||||
|
map[3] = 3;
|
||||||
map[4] = 4;
|
map[4] = 4;
|
||||||
map[5] = 5;
|
map[5] = 5;
|
||||||
InitPointerDeviceStruct(pDev, map, 5,
|
- InitPointerDeviceStruct(pDev, map, 5,
|
||||||
- GetMotionHistory,
|
- GetMotionHistory,
|
||||||
|
+ btn_labels[0] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_LEFT);
|
||||||
|
+ btn_labels[1] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_MIDDLE);
|
||||||
|
+ btn_labels[2] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_RIGHT);
|
||||||
|
+
|
||||||
|
+ axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_X);
|
||||||
|
+ axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y);
|
||||||
|
+
|
||||||
|
+ InitPointerDeviceStruct(pDev, map, 5, btn_labels,
|
||||||
PtrDeviceControl,
|
PtrDeviceControl,
|
||||||
GetMaximumEventsNum(), 2 /* numAxes */);
|
- GetMaximumEventsNum(), 2 /* numAxes */);
|
||||||
|
+ GetMaximumEventsNum(), 2 /* numAxes */, axes_labels);
|
||||||
vncSetPointerDevice(pDevice);
|
vncSetPointerDevice(pDevice);
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/kbdptr.c
|
break;
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/kbdptr.c
|
--- xorg-server-1.7.4/hw/vnc/kbdptr.c
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/kbdptr.c
|
+++ xorg-server-1.7.4/hw/vnc/kbdptr.c
|
||||||
@@ -74,19 +74,26 @@ vncSetPointerDevice(DeviceIntPtr ptr)
|
@@ -39,6 +39,7 @@
|
||||||
|
#include "mi.h"
|
||||||
|
#include "mipointer.h"
|
||||||
|
#include "keyboard.h"
|
||||||
|
+#include "xkbsrv.h"
|
||||||
|
|
||||||
|
#ifdef DMXVNC
|
||||||
|
#include "dmxinput.h"
|
||||||
|
@@ -69,15 +70,16 @@
|
||||||
|
ptrDevice = ptr;
|
||||||
|
}
|
||||||
|
|
||||||
|
-
|
||||||
|
#ifndef DMXVNC
|
||||||
static void
|
static void
|
||||||
EnqueueMotion(DeviceIntPtr ptrDev, int x, int y)
|
EnqueueMotion(DeviceIntPtr ptrDev, int x, int y)
|
||||||
{
|
{
|
||||||
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
||||||
+ int maxEventsNum = GetMaximumEventsNum();
|
|
||||||
+ xEvent *events = (xEvent*) calloc(sizeof(xEvent), maxEventsNum);
|
|
||||||
+ EventListPtr evls= calloc(sizeof(EventList), maxEventsNum);
|
|
||||||
int detail = 0, valuators[2], nevents, i;
|
int detail = 0, valuators[2], nevents, i;
|
||||||
|
+ EventListPtr events;
|
||||||
valuators[0] = x;
|
valuators[0] = x;
|
||||||
valuators[1] = y;
|
valuators[1] = y;
|
||||||
+ for (i = 0; i < maxEventsNum; i++) {
|
+ GetEventList(&events);
|
||||||
+ evls[i].event = &events[i];
|
+
|
||||||
+ evls[i].evlen = sizeof(xEvent);
|
|
||||||
+ }
|
|
||||||
if (!ptrDev) {
|
if (!ptrDev) {
|
||||||
ErrorF("VNC: In EnqueueMotion() ptrDev=NULL\n");
|
ErrorF("VNC: In EnqueueMotion() ptrDev=NULL\n");
|
||||||
return;
|
return;
|
||||||
}
|
@@ -85,8 +87,7 @@
|
||||||
- nevents = GetPointerEvents(events, ptrDev, MotionNotify, detail,
|
nevents = GetPointerEvents(events, ptrDev, MotionNotify, detail,
|
||||||
+ nevents = GetPointerEvents(evls, ptrDev, MotionNotify, detail,
|
|
||||||
POINTER_ABSOLUTE, 0, 2, valuators);
|
POINTER_ABSOLUTE, 0, 2, valuators);
|
||||||
for (i = 0; i < nevents; i++)
|
for (i = 0; i < nevents; i++)
|
||||||
mieqEnqueue(ptrDev, events + i);
|
- mieqEnqueue(ptrDev, events + i);
|
||||||
free(events);
|
- free(events);
|
||||||
+ free(evls);
|
+ mieqEnqueue(ptrDev, (InternalEvent*)(events + i)->event);
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@@ -94,33 +101,47 @@ EnqueueMotion(DeviceIntPtr ptrDev, int x
|
@@ -94,8 +95,10 @@
|
||||||
static void
|
static void
|
||||||
EnqueueButton(DeviceIntPtr ptrDev, int type, int detail)
|
EnqueueButton(DeviceIntPtr ptrDev, int type, int detail)
|
||||||
{
|
{
|
||||||
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
||||||
+ int maxEventsNum = GetMaximumEventsNum();
|
|
||||||
+ xEvent *events = (xEvent*) calloc(sizeof(xEvent), maxEventsNum);
|
|
||||||
+ EventListPtr evls= calloc(sizeof(EventList), maxEventsNum);
|
|
||||||
int nevents, i;
|
int nevents, i;
|
||||||
+ for (i = 0; i < maxEventsNum; i++) {
|
+ EventListPtr events;
|
||||||
+ evls[i].event = &events[i];
|
+ GetEventList(&events);
|
||||||
+ evls[i].evlen = sizeof(xEvent);
|
+
|
||||||
+ }
|
|
||||||
if (!ptrDev) {
|
if (!ptrDev) {
|
||||||
ErrorF("VNC: In EnqueueButton() ptrDev=NULL\n");
|
ErrorF("VNC: In EnqueueButton() ptrDev=NULL\n");
|
||||||
return;
|
return;
|
||||||
}
|
@@ -103,27 +106,26 @@
|
||||||
- nevents = GetPointerEvents(events, ptrDev, type, detail,
|
nevents = GetPointerEvents(events, ptrDev, type, detail,
|
||||||
+ nevents = GetPointerEvents(evls, ptrDev, type, detail,
|
|
||||||
POINTER_ABSOLUTE, 0, 0, NULL/*valuators*/);
|
POINTER_ABSOLUTE, 0, 0, NULL/*valuators*/);
|
||||||
for (i = 0; i < nevents; i++)
|
for (i = 0; i < nevents; i++)
|
||||||
mieqEnqueue(ptrDev, events + i);
|
- mieqEnqueue(ptrDev, events + i);
|
||||||
free(events);
|
- free(events);
|
||||||
+ free(evls);
|
+ mieqEnqueue(ptrDev, (InternalEvent*)(events + i)->event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -199,41 +251,87 @@ Index: xorg-server-1.6.3.901/hw/vnc/kbdptr.c
|
|||||||
EnqueueKey(DeviceIntPtr kbdDev, int type, int detail)
|
EnqueueKey(DeviceIntPtr kbdDev, int type, int detail)
|
||||||
{
|
{
|
||||||
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
- xEvent *events = (xEvent*) calloc(sizeof(xEvent), GetMaximumEventsNum());
|
||||||
+ int maxEventsNum = GetMaximumEventsNum();
|
|
||||||
+ xEvent *events = (xEvent*) calloc(sizeof(xEvent), maxEventsNum);
|
|
||||||
+ EventListPtr evls= calloc(sizeof(EventList), maxEventsNum);
|
|
||||||
int nevents, i;
|
int nevents, i;
|
||||||
+ for (i = 0; i < maxEventsNum; i++) {
|
+ EventListPtr events;
|
||||||
+ evls[i].event = &events[i];
|
+ GetEventList(&events);
|
||||||
+ evls[i].evlen = sizeof(xEvent);
|
+
|
||||||
+ }
|
|
||||||
if (!kbdDev) {
|
if (!kbdDev) {
|
||||||
ErrorF("VNC: In EnqueueKey() kbdDev=NULL\n");
|
ErrorF("VNC: In EnqueueKey() kbdDev=NULL\n");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
- nevents = GetKeyboardEvents(events, kbdDev, type, detail);
|
nevents = GetKeyboardEvents(events, kbdDev, type, detail);
|
||||||
+ nevents = GetKeyboardEvents(evls, kbdDev, type, detail);
|
|
||||||
for (i = 0; i < nevents; i++)
|
for (i = 0; i < nevents; i++)
|
||||||
mieqEnqueue(kbdDev, events + i);
|
- mieqEnqueue(kbdDev, events + i);
|
||||||
free(events);
|
- free(events);
|
||||||
+ free(evls);
|
+ mieqEnqueue(kbdDev, (InternalEvent*)(events + i)->event);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
-
|
||||||
|
/*
|
||||||
|
* Called when the rfbserver receives a rfbKeyEvent event from a client.
|
||||||
|
* Put an X keyboard event into the event queue.
|
||||||
|
@@ -133,6 +135,7 @@
|
||||||
|
{
|
||||||
|
const int type = down ? KeyPress : KeyRelease;
|
||||||
|
KeySymsPtr keySyms;
|
||||||
|
+ XkbStateRec *xkb;
|
||||||
|
int i;
|
||||||
|
int keyCode = 0;
|
||||||
|
int freeIndex = -1;
|
||||||
|
@@ -145,7 +148,7 @@
|
||||||
|
if (!kbdDevice)
|
||||||
|
return;
|
||||||
|
|
||||||
@@ -256,7 +277,7 @@ KbdAddEvent(Bool down, KeySym keySym, rf
|
- keySyms = &kbdDevice->key->curKeySyms;
|
||||||
|
+ keySyms = XkbGetCoreMap(kbdDevice);
|
||||||
|
|
||||||
|
#ifdef CORBA
|
||||||
|
if (cl) {
|
||||||
|
@@ -256,18 +259,19 @@
|
||||||
shiftMustBePressed = TRUE;
|
shiftMustBePressed = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
- SendMappingNotify(MappingKeyboard, keyCode, 1, serverClient);
|
- SendMappingNotify(MappingKeyboard, keyCode, 1, serverClient);
|
||||||
+ SendMappingNotify(kbdDevice, MappingKeyboard, keyCode, 1, serverClient);
|
+ XkbApplyMappingChange(kbdDevice, keySyms, keyCode, 1, NULL, serverClient);
|
||||||
|
|
||||||
ErrorF("KbdAddEvent: unknown KeySym 0x%x - allocating KeyCode %d\n",
|
ErrorF("KbdAddEvent: unknown KeySym 0x%x - allocating KeyCode %d\n",
|
||||||
(int)keySym, keyCode);
|
(int)keySym, keyCode);
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/rfbkeyb.c
|
}
|
||||||
===================================================================
|
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/rfbkeyb.c
|
+ xkb = &kbdDevice->key->xkbInfo->state;
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbkeyb.c
|
if (down) {
|
||||||
@@ -388,7 +388,7 @@ static XF86ModuleVersionInfo xf86rfbKeyb
|
- if (shiftMustBePressed && !(kbdDevice->key->state & ShiftMask)) {
|
||||||
|
+ if (shiftMustBePressed && !(XkbStateFieldFromRec(xkb) & ShiftMask)) {
|
||||||
|
fakeShiftPress = TRUE;
|
||||||
|
EnqueueKey(kbdDevice, KeyPress, SHIFT_L_KEY_CODE);
|
||||||
|
}
|
||||||
|
- if (shiftMustBeReleased && (kbdDevice->key->state & ShiftMask)) {
|
||||||
|
+ if (shiftMustBeReleased && (XkbStateFieldFromRec(xkb) & ShiftMask)) {
|
||||||
|
if (KEY_IS_PRESSED(SHIFT_L_KEY_CODE)) {
|
||||||
|
fakeShiftLRelease = TRUE;
|
||||||
|
EnqueueKey(kbdDevice, KeyRelease, SHIFT_L_KEY_CODE);
|
||||||
|
--- xorg-server-1.7.4/hw/vnc/rdp.c
|
||||||
|
+++ xorg-server-1.7.4/hw/vnc/rdp.c
|
||||||
|
@@ -27,6 +27,7 @@
|
||||||
|
#include <errno.h>
|
||||||
|
#include <netinet/in.h>
|
||||||
|
#include <netinet/tcp.h>
|
||||||
|
+#include <arpa/inet.h>
|
||||||
|
#include "rfb.h"
|
||||||
|
|
||||||
|
typedef struct rdpClientRec {
|
||||||
|
--- xorg-server-1.7.4/hw/vnc/rfbkeyb.c
|
||||||
|
+++ xorg-server-1.7.4/hw/vnc/rfbkeyb.c
|
||||||
|
@@ -147,7 +147,7 @@
|
||||||
|
#ifdef XKB
|
||||||
|
if (noXkbExtension) {
|
||||||
|
#endif
|
||||||
|
- InitKeyboardDeviceStruct(pDev, &keySyms, modMap,
|
||||||
|
+ InitKeyboardDeviceStruct(device, NULL,
|
||||||
|
(BellProcPtr)rfbSendBell,
|
||||||
|
(KbdCtrlProcPtr)NoopDDA);
|
||||||
|
#ifdef XKB
|
||||||
|
@@ -388,7 +388,7 @@
|
||||||
"xf4vnc Project, see http://xf4vnc.sf.net",
|
"xf4vnc Project, see http://xf4vnc.sf.net",
|
||||||
MODINFOSTRING1,
|
MODINFOSTRING1,
|
||||||
MODINFOSTRING2,
|
MODINFOSTRING2,
|
||||||
@ -242,11 +340,24 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbkeyb.c
|
|||||||
1, 0, 0,
|
1, 0, 0,
|
||||||
ABI_CLASS_XINPUT,
|
ABI_CLASS_XINPUT,
|
||||||
ABI_XINPUT_VERSION,
|
ABI_XINPUT_VERSION,
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
--- xorg-server-1.7.4/hw/vnc/rfbmouse.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/rfbmouse.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/rfbmouse.c
|
@@ -51,7 +51,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
#include <mipointer.h>
|
||||||
@@ -98,10 +98,12 @@ xf86rfbMouseControlProc(DeviceIntPtr dev
|
#endif
|
||||||
|
#include "rfb.h"
|
||||||
|
-
|
||||||
|
+#include "xserver-properties.h"
|
||||||
|
|
||||||
|
unsigned char ptrAcceleration = 50;
|
||||||
|
|
||||||
|
@@ -95,13 +95,18 @@
|
||||||
|
{
|
||||||
|
BYTE map[6];
|
||||||
|
DevicePtr pDev = (DevicePtr)device;
|
||||||
|
+ Atom btn_labels[5] = {0};
|
||||||
|
+ Atom axes_labels[2] = {0};
|
||||||
|
+
|
||||||
void *func1;
|
void *func1;
|
||||||
int (*func2)(void);
|
int (*func2)(void);
|
||||||
|
|
||||||
@ -259,17 +370,31 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
|||||||
|
|
||||||
if (LoaderSymbol("GetMotionHistorySize"))
|
if (LoaderSymbol("GetMotionHistorySize"))
|
||||||
func2 = LoaderSymbol("GetMotionHistorySize");
|
func2 = LoaderSymbol("GetMotionHistorySize");
|
||||||
@@ -120,7 +122,9 @@ xf86rfbMouseControlProc(DeviceIntPtr dev
|
@@ -119,10 +124,21 @@
|
||||||
|
map[3] = 3;
|
||||||
map[4] = 4;
|
map[4] = 4;
|
||||||
map[5] = 5;
|
map[5] = 5;
|
||||||
InitPointerDeviceStruct(pDev, map, 5,
|
- InitPointerDeviceStruct(pDev, map, 5,
|
||||||
|
+ btn_labels[0] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_LEFT);
|
||||||
|
+ btn_labels[1] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_MIDDLE);
|
||||||
|
+ btn_labels[2] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_RIGHT);
|
||||||
|
+ btn_labels[3] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_UP);
|
||||||
|
+ btn_labels[4] = XIGetKnownProperty(BTN_LABEL_PROP_BTN_WHEEL_DOWN);
|
||||||
|
+
|
||||||
|
+ axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_X);
|
||||||
|
+ axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_REL_Y);
|
||||||
|
+
|
||||||
|
+ InitPointerDeviceStruct(pDev, map, 5, btn_labels,
|
||||||
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 3
|
+#if GET_ABI_MAJOR(ABI_XINPUT_VERSION) < 3
|
||||||
func1,
|
func1,
|
||||||
+#endif
|
+#endif
|
||||||
PtrDeviceControl,
|
PtrDeviceControl,
|
||||||
(*func2)(), 2);
|
- (*func2)(), 2);
|
||||||
|
+ (*func2)(), 2, axes_labels);
|
||||||
break;
|
break;
|
||||||
@@ -243,7 +247,7 @@ static XF86ModuleVersionInfo xf86rfbMous
|
|
||||||
|
case DEVICE_ON:
|
||||||
|
@@ -243,7 +259,7 @@
|
||||||
"xf4vnc Project, see http://xf4vnc.sf.net",
|
"xf4vnc Project, see http://xf4vnc.sf.net",
|
||||||
MODINFOSTRING1,
|
MODINFOSTRING1,
|
||||||
MODINFOSTRING2,
|
MODINFOSTRING2,
|
||||||
@ -278,11 +403,17 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
|||||||
1, 0, 0,
|
1, 0, 0,
|
||||||
ABI_CLASS_XINPUT,
|
ABI_CLASS_XINPUT,
|
||||||
ABI_XINPUT_VERSION,
|
ABI_XINPUT_VERSION,
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
--- xorg-server-1.7.4/hw/vnc/rfbserver.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/rfbserver.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/rfbserver.c
|
@@ -53,6 +53,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
#include "propertyst.h"
|
||||||
@@ -1122,8 +1122,8 @@ rfbProcessClientNormalMessage(cl)
|
#include <X11/Xatom.h>
|
||||||
|
#include <mi.h>
|
||||||
|
+#include <inputstr.h>
|
||||||
|
|
||||||
|
#ifdef CORBA
|
||||||
|
#include <vncserverctrl.h>
|
||||||
|
@@ -1122,8 +1123,8 @@
|
||||||
|
|
||||||
{
|
{
|
||||||
int x, y;
|
int x, y;
|
||||||
@ -293,11 +424,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
|||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
--- xorg-server-1.7.4/hw/vnc/sprite.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/sprite.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/sprite.c
|
@@ -112,7 +112,8 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|
||||||
@@ -112,7 +112,8 @@ static void rfbSpriteSaveDoomedAreas
|
|
||||||
static RegionPtr rfbSpriteRestoreAreas(WindowPtr pWin, RegionPtr pRgnExposed);
|
static RegionPtr rfbSpriteRestoreAreas(WindowPtr pWin, RegionPtr pRgnExposed);
|
||||||
static void rfbSpriteComputeSaved(ScreenPtr pScreen);
|
static void rfbSpriteComputeSaved(ScreenPtr pScreen);
|
||||||
|
|
||||||
@ -307,7 +436,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
|
|
||||||
#define SCREEN_PROLOGUE(pScreen, field) ((pScreen)->field = \
|
#define SCREEN_PROLOGUE(pScreen, field) ((pScreen)->field = \
|
||||||
((rfbSpriteScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, \
|
((rfbSpriteScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, \
|
||||||
@@ -144,7 +145,8 @@ static GCFuncs rfbSpriteGCFuncs = {
|
@@ -144,7 +145,8 @@
|
||||||
rfbSpriteCopyClip,
|
rfbSpriteCopyClip,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -317,7 +446,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
|
|
||||||
#define GC_FUNC_PROLOGUE(pGC) \
|
#define GC_FUNC_PROLOGUE(pGC) \
|
||||||
rfbSpriteGCPtr pGCPriv = \
|
rfbSpriteGCPtr pGCPriv = \
|
||||||
@@ -289,23 +291,27 @@ static GCOps rfbSpriteGCOps = {
|
@@ -289,23 +291,27 @@
|
||||||
* pointer-sprite method table
|
* pointer-sprite method table
|
||||||
*/
|
*/
|
||||||
|
|
||||||
@ -350,7 +479,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -1963,7 +1969,7 @@ rfbSpriteLineHelper()
|
@@ -1963,7 +1969,7 @@
|
||||||
#define SPRITE_PAD 8
|
#define SPRITE_PAD 8
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
@ -359,7 +488,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
{
|
{
|
||||||
rfbSpriteScreenPtr pScreenPriv;
|
rfbSpriteScreenPtr pScreenPriv;
|
||||||
|
|
||||||
@@ -1975,7 +1981,7 @@ rfbSpriteRealizeCursor (ScreenPtr pScree
|
@@ -1975,7 +1981,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
@ -368,7 +497,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
{
|
{
|
||||||
rfbSpriteScreenPtr pScreenPriv;
|
rfbSpriteScreenPtr pScreenPriv;
|
||||||
|
|
||||||
@@ -1985,7 +1991,7 @@ rfbSpriteUnrealizeCursor (ScreenPtr pScr
|
@@ -1985,7 +1991,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -377,7 +506,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
{
|
{
|
||||||
rfbSpriteScreenPtr pScreenPriv;
|
rfbSpriteScreenPtr pScreenPriv;
|
||||||
rfbClientPtr cl, nextCl;
|
rfbClientPtr cl, nextCl;
|
||||||
@@ -2101,13 +2107,24 @@ rfbSpriteSetCursor (ScreenPtr pScreen, C
|
@@ -2101,13 +2107,24 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -404,7 +533,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -2215,9 +2232,7 @@ rfbSpriteComputeSaved (pScreen)
|
@@ -2215,9 +2232,7 @@
|
||||||
*/
|
*/
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
@ -415,7 +544,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
{
|
{
|
||||||
rfbClientPtr cl;
|
rfbClientPtr cl;
|
||||||
rfbSpriteScreenPtr pPriv;
|
rfbSpriteScreenPtr pPriv;
|
||||||
@@ -2230,7 +2245,7 @@ rfbDisplayCursor(pScreen, pCursor)
|
@@ -2230,7 +2245,7 @@
|
||||||
|
|
||||||
pPriv = (rfbSpriteScreenPtr)dixLookupPrivate(&pScreen->devPrivates,
|
pPriv = (rfbSpriteScreenPtr)dixLookupPrivate(&pScreen->devPrivates,
|
||||||
rfbSpriteScreenKey);
|
rfbSpriteScreenKey);
|
||||||
@ -424,10 +553,8 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
|||||||
|
|
||||||
/* send new cursor shape to interested viewers */
|
/* send new cursor shape to interested viewers */
|
||||||
for (cl = rfbClientHead; cl ; cl = cl->next) {
|
for (cl = rfbClientHead; cl ; cl = cl->next) {
|
||||||
Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
--- xorg-server-1.7.4/hw/vnc/vncext.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/vnc/vncext.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/vnc/vncext.c
|
|
||||||
+++ xorg-server-1.6.3.901/hw/vnc/vncext.c
|
|
||||||
@@ -36,8 +36,9 @@
|
@@ -36,8 +36,9 @@
|
||||||
#include <arpa/inet.h>
|
#include <arpa/inet.h>
|
||||||
#include <netdb.h>
|
#include <netdb.h>
|
||||||
@ -440,7 +567,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
|||||||
|
|
||||||
int VncSelectNotify(ClientPtr client, BOOL onoff);
|
int VncSelectNotify(ClientPtr client, BOOL onoff);
|
||||||
void VncExtensionInit(void);
|
void VncExtensionInit(void);
|
||||||
@@ -514,7 +515,7 @@ GenerateVncConnectedEvent(int sock)
|
@@ -514,7 +515,7 @@
|
||||||
else
|
else
|
||||||
conn.ipaddress = (CARD32)peer.sin_addr.s_addr;
|
conn.ipaddress = (CARD32)peer.sin_addr.s_addr;
|
||||||
|
|
||||||
@ -449,7 +576,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
|||||||
NoEventMask, NullGrab);
|
NoEventMask, NullGrab);
|
||||||
}
|
}
|
||||||
pn = pn->next;
|
pn = pn->next;
|
||||||
@@ -557,7 +558,7 @@ GenerateVncChromiumConnectedEvent(int so
|
@@ -557,7 +558,7 @@
|
||||||
else
|
else
|
||||||
conn.ipaddress = (CARD32)peer.sin_addr.s_addr;
|
conn.ipaddress = (CARD32)peer.sin_addr.s_addr;
|
||||||
|
|
||||||
@ -458,7 +585,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
|||||||
NoEventMask, NullGrab);
|
NoEventMask, NullGrab);
|
||||||
}
|
}
|
||||||
pn = pn->next;
|
pn = pn->next;
|
||||||
@@ -586,7 +587,7 @@ GenerateVncDisconnectedEvent(int sock)
|
@@ -586,7 +587,7 @@
|
||||||
conn.type = VncEventBase + XVncDisconnected;
|
conn.type = VncEventBase + XVncDisconnected;
|
||||||
conn.sequenceNumber = pn->client->sequence;
|
conn.sequenceNumber = pn->client->sequence;
|
||||||
conn.connected = sock;
|
conn.connected = sock;
|
||||||
@ -467,20 +594,28 @@ Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
|||||||
NoEventMask, NullGrab);
|
NoEventMask, NullGrab);
|
||||||
}
|
}
|
||||||
pn = pn->next;
|
pn = pn->next;
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
--- xorg-server-1.7.4/hw/xfree86/vnc/vncInit.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/xfree86/vnc/vncInit.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/vnc/vncInit.c
|
@@ -34,8 +34,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|
||||||
@@ -35,7 +35,7 @@
|
|
||||||
#include "xf86.h"
|
#include "xf86.h"
|
||||||
#include "xf86_OSproc.h"
|
#include "xf86_OSproc.h"
|
||||||
#include "xf86Resources.h"
|
-#include "xf86Resources.h"
|
||||||
-#include "xf86Version.h"
|
-#include "xf86Version.h"
|
||||||
+#include "xorgVersion.h"
|
+#include "xorgVersion.h"
|
||||||
|
|
||||||
int vncScreenPrivateIndex = -1;
|
int vncScreenPrivateIndex = -1;
|
||||||
int inetdSock = -1;
|
int inetdSock = -1;
|
||||||
@@ -56,11 +56,11 @@ static unsigned long VNCGeneration = 0;
|
@@ -48,6 +47,8 @@
|
||||||
|
|
||||||
|
extern void VncExtensionInit(void);
|
||||||
|
|
||||||
|
+extern void vncInitMouse(void);
|
||||||
|
+extern void vncInitKeyb(void);
|
||||||
|
Bool VNCInit(ScreenPtr pScreen, unsigned char *FBStart);
|
||||||
|
|
||||||
|
#ifndef XFree86LOADER
|
||||||
|
@@ -56,11 +57,11 @@
|
||||||
static const OptionInfoRec *VNCAvailableOptions(void *unused);
|
static const OptionInfoRec *VNCAvailableOptions(void *unused);
|
||||||
static void rfbWakeupHandler (int i, pointer blockData, unsigned long err, pointer pReadmask);
|
static void rfbWakeupHandler (int i, pointer blockData, unsigned long err, pointer pReadmask);
|
||||||
|
|
||||||
@ -497,7 +632,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
|
|
||||||
static miPointerSpriteFuncRec vncCursorSpriteFuncs = {
|
static miPointerSpriteFuncRec vncCursorSpriteFuncs = {
|
||||||
vncCursorRealizeCursor,
|
vncCursorRealizeCursor,
|
||||||
@@ -389,23 +389,23 @@ VNCInit(ScreenPtr pScreen, unsigned char
|
@@ -389,23 +390,23 @@
|
||||||
/****** miPointerSpriteFunctions *******/
|
/****** miPointerSpriteFunctions *******/
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
@ -526,7 +661,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
{
|
{
|
||||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||||
|
|
||||||
@@ -426,11 +426,11 @@ vncCursorSetCursor(ScreenPtr pScreen, Cu
|
@@ -426,11 +427,11 @@
|
||||||
pScreenPriv->cursorIsDrawn = TRUE;
|
pScreenPriv->cursorIsDrawn = TRUE;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
@ -540,7 +675,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
{
|
{
|
||||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||||
rfbClientPtr cl;
|
rfbClientPtr cl;
|
||||||
@@ -440,7 +440,7 @@ vncCursorMoveCursor(ScreenPtr pScreen, i
|
@@ -440,7 +441,7 @@
|
||||||
cl->cursorWasMoved = TRUE;
|
cl->cursorWasMoved = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -549,7 +684,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
}
|
}
|
||||||
|
|
||||||
Bool
|
Bool
|
||||||
@@ -505,9 +505,7 @@ vncUseHWCursorARGB(pScreen, pCursor)
|
@@ -505,9 +506,7 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static Bool
|
static Bool
|
||||||
@ -560,7 +695,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
{
|
{
|
||||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||||
rfbClientPtr cl;
|
rfbClientPtr cl;
|
||||||
@@ -520,7 +518,7 @@ vncDisplayCursor(pScreen, pCursor)
|
@@ -520,7 +519,7 @@
|
||||||
cl->cursorWasChanged = TRUE;
|
cl->cursorWasChanged = TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -569,3 +704,19 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
|||||||
|
|
||||||
pScreen->DisplayCursor = vncDisplayCursor;
|
pScreen->DisplayCursor = vncDisplayCursor;
|
||||||
|
|
||||||
|
@@ -586,6 +585,7 @@
|
||||||
|
NULL /* ModuleTearDownProc */
|
||||||
|
};
|
||||||
|
|
||||||
|
+#if 0
|
||||||
|
ModuleInfoRec VNC = {
|
||||||
|
1, /* moduleVersion */
|
||||||
|
"VNC", /* moduleName */
|
||||||
|
@@ -593,6 +593,7 @@
|
||||||
|
0, /* refCount */
|
||||||
|
VNCAvailableOptions, /* function returning array of OptionsInfoRec */
|
||||||
|
};
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
ExtensionModule vncExtensionModule = {
|
||||||
|
VncExtensionInit, /* initFunc */
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -1,3 +1,49 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Sat Jan 16 19:06:44 CET 2010 - sndirsch@suse.de
|
||||||
|
|
||||||
|
- set VIDEO_ABI_VERSION = 6 and INPUT_ABI_VERSION = 7 in specfile
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Thu Jan 14 01:37:00 CET 2010 - ro@suse.de
|
||||||
|
|
||||||
|
- update to 1.7.4
|
||||||
|
- obsoletes acpi_events.diff
|
||||||
|
- obsoletes loadmod-bug197195.diff
|
||||||
|
- obsoletes events.diff
|
||||||
|
- obsoletes acpi-warning.diff
|
||||||
|
- obsoletes fbdev_fallback_fail_fix.diff
|
||||||
|
- obsoletes bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff
|
||||||
|
- obsoletes keyrelease-1.5.2.diff
|
||||||
|
- obsoletes 0001-Unclaim-PCI-slot-if-driver-probing-fails.patch
|
||||||
|
- obsoletes 0001-Fix-sporadic-segfault-on-resume-with-intel-KMS-due-t.patch
|
||||||
|
- obsoletes bug532341.diff
|
||||||
|
- obsoletes no-return-in-nonvoid-function.diff
|
||||||
|
- adjusted 0001-Fix-segfault-when-killing-X-with-ctrl-alt-backspace.patch
|
||||||
|
- adjusted bitmap_always_unscaled.diff
|
||||||
|
- adjusted bug-197858_dpms.diff
|
||||||
|
- adjusted cache-xkbcomp-output-for-fast-start-up.patch
|
||||||
|
- adjusted driver-autoconfig.diff
|
||||||
|
- adjusted fixed-SYNC-extension-trigger-BlockHandler-test.diff
|
||||||
|
- adjusted fpic.diff
|
||||||
|
- adjusted missing_font_paths.diff
|
||||||
|
- adjusted p_default-module-path.diff
|
||||||
|
- adjusted p_ia64-console.diff
|
||||||
|
- adjusted p_xorg_acpi.diff
|
||||||
|
- adjusted xorg-detect-psb.patch
|
||||||
|
- adjusted xorg-server-xf4vnc-disable-dmxvnc.diff
|
||||||
|
- adjusted xorg-server-xf4vnc-fix.diff
|
||||||
|
- adjusted xorg-server-xf4vnc.patch
|
||||||
|
- adjusted xorg-x11-server.changes
|
||||||
|
- adjusted xorg-x11-server.spec
|
||||||
|
- adjusted zap_warning_xserver.diff
|
||||||
|
- removed truetype_fontpath.diff
|
||||||
|
- removed libdri_noPanoramiXExtension_symbol.patch
|
||||||
|
- exa-greedy.diff not applied
|
||||||
|
- fixed xorg-detect-psb.patch:
|
||||||
|
rewrite to use second level switch statement for device_id
|
||||||
|
- /usr/$lib/X11/Options is gone
|
||||||
|
(Remove xorgcfg 'Options' list.)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Sun Dec 13 11:52:48 CET 2009 - sndirsch@suse.de
|
Sun Dec 13 11:52:48 CET 2009 - sndirsch@suse.de
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package xorg-x11-server (Version 7.4)
|
# spec file for package xorg-x11-server (Version 7.4)
|
||||||
#
|
#
|
||||||
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -20,7 +20,7 @@
|
|||||||
%define moblin 0
|
%define moblin 0
|
||||||
|
|
||||||
Name: xorg-x11-server
|
Name: xorg-x11-server
|
||||||
%define dirsuffix 1.6.5
|
%define dirsuffix 1.7.4
|
||||||
%define fglrx_driver_hack 0
|
%define fglrx_driver_hack 0
|
||||||
### FIXME
|
### FIXME
|
||||||
%define vnc 1
|
%define vnc 1
|
||||||
@ -33,7 +33,7 @@ BuildRequires: libjpeg-devel
|
|||||||
Url: http://xorg.freedesktop.org/
|
Url: http://xorg.freedesktop.org/
|
||||||
%define EXPERIMENTAL 0
|
%define EXPERIMENTAL 0
|
||||||
Version: 7.4
|
Version: 7.4
|
||||||
Release: 64
|
Release: 65
|
||||||
License: GPLv2+ ; MIT License (or similar)
|
License: GPLv2+ ; MIT License (or similar)
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
Group: System/X11/Servers/XF86_4
|
Group: System/X11/Servers/XF86_4
|
||||||
@ -43,8 +43,8 @@ PreReq: %fillup_prereq
|
|||||||
Requires: pkgconfig xorg-x11-fonts-core xorg-x11
|
Requires: pkgconfig xorg-x11-fonts-core xorg-x11
|
||||||
%if %suse_version > 1010
|
%if %suse_version > 1010
|
||||||
%ifnarch s390 s390x
|
%ifnarch s390 s390x
|
||||||
Provides: VIDEO_ABI_VERSION = 5
|
Provides: VIDEO_ABI_VERSION = 6
|
||||||
Provides: INPUT_ABI_VERSION = 4
|
Provides: INPUT_ABI_VERSION = 7
|
||||||
Requires: libpixman-1-0 >= 0.15.2
|
Requires: libpixman-1-0 >= 0.15.2
|
||||||
%endif
|
%endif
|
||||||
%endif
|
%endif
|
||||||
@ -73,7 +73,6 @@ Patch18: p_ia64-console.diff
|
|||||||
Patch23: disable-fbblt-opt.diff
|
Patch23: disable-fbblt-opt.diff
|
||||||
Patch27: mouse.diff
|
Patch27: mouse.diff
|
||||||
Patch29: xephyr.diff
|
Patch29: xephyr.diff
|
||||||
Patch32: acpi_events.diff
|
|
||||||
Patch34: p_pci-off-by-one.diff.ia64
|
Patch34: p_pci-off-by-one.diff.ia64
|
||||||
Patch36: libdrm.diff
|
Patch36: libdrm.diff
|
||||||
%if %vnc
|
%if %vnc
|
||||||
@ -88,7 +87,6 @@ Patch46: xorg-server-xf4vnc-busyloop.diff
|
|||||||
Patch47: xorg-server-xf4vnc-clientTimeout.diff
|
Patch47: xorg-server-xf4vnc-clientTimeout.diff
|
||||||
Patch48: xorg-server-xf4vnc-fix.diff
|
Patch48: xorg-server-xf4vnc-fix.diff
|
||||||
%endif
|
%endif
|
||||||
Patch41: loadmod-bug197195.diff
|
|
||||||
Patch45: bug-197858_dpms.diff
|
Patch45: bug-197858_dpms.diff
|
||||||
Patch63: xorg-x11-server-1.2.99-unbreak-domain.patch
|
Patch63: xorg-x11-server-1.2.99-unbreak-domain.patch
|
||||||
Patch67: xorg-docs.diff
|
Patch67: xorg-docs.diff
|
||||||
@ -100,10 +98,7 @@ Patch101: zap_warning_xserver.diff
|
|||||||
Patch103: confine_to_shape.diff
|
Patch103: confine_to_shape.diff
|
||||||
Patch104: bitmap_always_unscaled.diff
|
Patch104: bitmap_always_unscaled.diff
|
||||||
Patch106: randr1_1-sig11.diff
|
Patch106: randr1_1-sig11.diff
|
||||||
Patch109: events.diff
|
|
||||||
Patch112: fix-dpi-values.diff
|
Patch112: fix-dpi-values.diff
|
||||||
Patch113: no-return-in-nonvoid-function.diff
|
|
||||||
Patch117: acpi-warning.diff
|
|
||||||
Patch118: exa-greedy.diff
|
Patch118: exa-greedy.diff
|
||||||
Patch123: vidmode-sig11.diff
|
Patch123: vidmode-sig11.diff
|
||||||
Patch125: 0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch
|
Patch125: 0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch
|
||||||
@ -111,15 +106,10 @@ Patch127: dpms_screensaver.diff
|
|||||||
Patch128: pci-legacy-mem-fallback.diff
|
Patch128: pci-legacy-mem-fallback.diff
|
||||||
Patch129: bug474071-fix1.diff
|
Patch129: bug474071-fix1.diff
|
||||||
Patch132: fixed-SYNC-extension-trigger-BlockHandler-test.diff
|
Patch132: fixed-SYNC-extension-trigger-BlockHandler-test.diff
|
||||||
Patch140: fbdev_fallback_fail_fix.diff
|
|
||||||
Patch142: bug-507190_xorg-x11-server-bnc381139-randr-reprobe-on-unsuspend.diff
|
|
||||||
Patch143: autoconfig_fallback_fbdev_first.diff
|
Patch143: autoconfig_fallback_fbdev_first.diff
|
||||||
Patch144: keyrelease-1.5.2.diff
|
|
||||||
Patch145: driver-autoconfig.diff
|
Patch145: driver-autoconfig.diff
|
||||||
Patch147: truetype_fontpath.diff
|
|
||||||
Patch148: commit-c941479.diff
|
Patch148: commit-c941479.diff
|
||||||
# Moblin
|
# Moblin
|
||||||
Patch161: libdri_noPanoramiXExtension_symbol.patch
|
|
||||||
Patch162: cache-xkbcomp-output-for-fast-start-up.patch
|
Patch162: cache-xkbcomp-output-for-fast-start-up.patch
|
||||||
%if %moblin
|
%if %moblin
|
||||||
Patch163: xserver-1.5.0-bg-none-root.patch
|
Patch163: xserver-1.5.0-bg-none-root.patch
|
||||||
@ -136,10 +126,7 @@ Patch169: moblin-xorg-x11-nonroot-vesa.patch
|
|||||||
Patch170: xserver-boottime.patch
|
Patch170: xserver-boottime.patch
|
||||||
Patch171: moblin-use_preferred_mode_for_all_outputs.diff
|
Patch171: moblin-use_preferred_mode_for_all_outputs.diff
|
||||||
%endif
|
%endif
|
||||||
Patch190: 0001-Unclaim-PCI-slot-if-driver-probing-fails.patch
|
|
||||||
Patch191: 0001-Fix-sporadic-segfault-on-resume-with-intel-KMS-due-t.patch
|
|
||||||
Patch200: bug534768-prefer_local_symbols.patch
|
Patch200: bug534768-prefer_local_symbols.patch
|
||||||
Patch532341: bug532341.diff
|
|
||||||
Patch202: 0001-Check-harder-for-primary-PCI-device.patch
|
Patch202: 0001-Check-harder-for-primary-PCI-device.patch
|
||||||
Patch203: 0001-Fix-segfault-when-killing-X-with-ctrl-alt-backspace.patch
|
Patch203: 0001-Fix-segfault-when-killing-X-with-ctrl-alt-backspace.patch
|
||||||
Patch204: missing_font_paths.diff
|
Patch204: missing_font_paths.diff
|
||||||
@ -214,8 +201,6 @@ popd
|
|||||||
%patch23
|
%patch23
|
||||||
%patch27
|
%patch27
|
||||||
%patch29
|
%patch29
|
||||||
### Bug 197572: X.Org PCI/IA64 patches
|
|
||||||
%patch32 -p1
|
|
||||||
### FIXME
|
### FIXME
|
||||||
#%patch34 -p0
|
#%patch34 -p0
|
||||||
%patch36 -p0
|
%patch36 -p0
|
||||||
@ -230,7 +215,6 @@ popd
|
|||||||
%patch48 -p1
|
%patch48 -p1
|
||||||
chmod 755 hw/vnc/symlink-vnc.sh
|
chmod 755 hw/vnc/symlink-vnc.sh
|
||||||
%endif
|
%endif
|
||||||
%patch41 -p1
|
|
||||||
%patch45 -p0
|
%patch45 -p0
|
||||||
### FIXME
|
### FIXME
|
||||||
#%patch63 -p1
|
#%patch63 -p1
|
||||||
@ -246,11 +230,8 @@ popd
|
|||||||
%patch103
|
%patch103
|
||||||
%patch104 -p1
|
%patch104 -p1
|
||||||
%patch106 -p1
|
%patch106 -p1
|
||||||
%patch109 -p1
|
|
||||||
%patch112 -p0
|
%patch112 -p0
|
||||||
%patch113 -p0
|
#patch118 -p1
|
||||||
%patch117
|
|
||||||
%patch118 -p1
|
|
||||||
%patch123 -p0
|
%patch123 -p0
|
||||||
%patch125 -p1
|
%patch125 -p1
|
||||||
%patch127 -p1
|
%patch127 -p1
|
||||||
@ -259,15 +240,10 @@ pushd hw/xfree86/os-support/bus
|
|||||||
%patch129 -p0
|
%patch129 -p0
|
||||||
popd
|
popd
|
||||||
%patch132 -p1
|
%patch132 -p1
|
||||||
%patch140 -p1
|
|
||||||
%patch142 -p1
|
|
||||||
%patch143 -p0
|
%patch143 -p0
|
||||||
%patch144 -p1
|
|
||||||
%patch145 -p0
|
%patch145 -p0
|
||||||
%patch147 -p0
|
|
||||||
### Bug #528397
|
### Bug #528397
|
||||||
#%patch148 -p1 -R
|
#%patch148 -p1 -R
|
||||||
%patch161 -p1
|
|
||||||
%patch162 -p1
|
%patch162 -p1
|
||||||
%if %moblin
|
%if %moblin
|
||||||
%patch163 -p1
|
%patch163 -p1
|
||||||
@ -282,10 +258,7 @@ popd
|
|||||||
%patch171 -p1
|
%patch171 -p1
|
||||||
%endif
|
%endif
|
||||||
#
|
#
|
||||||
%patch190 -p1
|
|
||||||
%patch191 -p1
|
|
||||||
%patch200 -p1
|
%patch200 -p1
|
||||||
%patch532341 -p1
|
|
||||||
%patch202 -p1
|
%patch202 -p1
|
||||||
%patch203 -p1
|
%patch203 -p1
|
||||||
%patch204 -p0
|
%patch204 -p0
|
||||||
@ -541,9 +514,9 @@ exit 0
|
|||||||
%dir /etc/modprobe.d
|
%dir /etc/modprobe.d
|
||||||
/etc/modprobe.d/50-nvidia.conf
|
/etc/modprobe.d/50-nvidia.conf
|
||||||
%endif
|
%endif
|
||||||
%ifarch ppc64 x86_64
|
#%ifarch ppc64 x86_64
|
||||||
%dir /usr/%{_lib}/X11
|
#%dir /usr/%{_lib}/X11
|
||||||
%endif
|
#%endif
|
||||||
%dir /usr/%{_lib}/xorg
|
%dir /usr/%{_lib}/xorg
|
||||||
%ifnarch s390 s390x
|
%ifnarch s390 s390x
|
||||||
%dir /var/lib/X11
|
%dir /var/lib/X11
|
||||||
@ -571,7 +544,7 @@ exit 0
|
|||||||
/usr/bin/gtf
|
/usr/bin/gtf
|
||||||
%endif
|
%endif
|
||||||
%ifnarch s390 s390x
|
%ifnarch s390 s390x
|
||||||
/usr/%{_lib}/X11/*
|
#/usr/%{_lib}/X11/*
|
||||||
/usr/%{_lib}/xorg/modules/
|
/usr/%{_lib}/xorg/modules/
|
||||||
%{_mandir}/man4/*
|
%{_mandir}/man4/*
|
||||||
%endif
|
%endif
|
||||||
|
@ -1,8 +1,8 @@
|
|||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
||||||
===================================================================
|
================================================================================
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Config.c
|
--- xorg-server-1.7.4/hw/xfree86/common/xf86Config.c
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Config.c
|
||||||
@@ -706,6 +706,7 @@ typedef enum {
|
@@ -679,6 +679,7 @@
|
||||||
FLAG_NOTRAPSIGNALS,
|
FLAG_NOTRAPSIGNALS,
|
||||||
FLAG_DONTVTSWITCH,
|
FLAG_DONTVTSWITCH,
|
||||||
FLAG_DONTZAP,
|
FLAG_DONTZAP,
|
||||||
@ -10,7 +10,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
|||||||
FLAG_DONTZOOM,
|
FLAG_DONTZOOM,
|
||||||
FLAG_DISABLEVIDMODE,
|
FLAG_DISABLEVIDMODE,
|
||||||
FLAG_ALLOWNONLOCAL,
|
FLAG_ALLOWNONLOCAL,
|
||||||
@@ -743,6 +744,8 @@ static OptionInfoRec FlagOptions[] = {
|
@@ -717,6 +718,8 @@
|
||||||
{0}, FALSE },
|
{0}, FALSE },
|
||||||
{ FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN,
|
{ FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN,
|
||||||
{0}, FALSE },
|
{0}, FALSE },
|
||||||
@ -19,7 +19,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
|||||||
{ FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN,
|
{ FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN,
|
||||||
{0}, FALSE },
|
{0}, FALSE },
|
||||||
{ FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN,
|
{ FLAG_DISABLEVIDMODE, "DisableVidModeExtension", OPTV_BOOLEAN,
|
||||||
@@ -855,6 +858,7 @@ configServerFlags(XF86ConfFlagsPtr flags
|
@@ -823,6 +826,7 @@
|
||||||
xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS, &xf86Info.notrapSignals);
|
xf86GetOptValBool(FlagOptions, FLAG_NOTRAPSIGNALS, &xf86Info.notrapSignals);
|
||||||
xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch);
|
xf86GetOptValBool(FlagOptions, FLAG_DONTVTSWITCH, &xf86Info.dontVTSwitch);
|
||||||
xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap);
|
xf86GetOptValBool(FlagOptions, FLAG_DONTZAP, &xf86Info.dontZap);
|
||||||
@ -27,12 +27,10 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
|||||||
xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom);
|
xf86GetOptValBool(FlagOptions, FLAG_DONTZOOM, &xf86Info.dontZoom);
|
||||||
|
|
||||||
xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);
|
xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
--- xorg-server-1.7.4/hw/xfree86/common/xf86Events.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Events.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Events.c
|
@@ -180,12 +180,26 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
DebugF("ProcessActionEvent(%d,%x)\n", (int) action, arg);
|
||||||
@@ -191,12 +191,26 @@ xf86ProcessActionEvent(ActionEvent actio
|
|
||||||
#endif
|
|
||||||
switch (action) {
|
switch (action) {
|
||||||
case ACTION_TERMINATE:
|
case ACTION_TERMINATE:
|
||||||
- if (!xf86Info.dontZap) {
|
- if (!xf86Info.dontZap) {
|
||||||
@ -62,50 +60,40 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
|||||||
break;
|
break;
|
||||||
case ACTION_NEXT_MODE:
|
case ACTION_NEXT_MODE:
|
||||||
if (!xf86Info.dontZoom)
|
if (!xf86Info.dontZoom)
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
--- xorg-server-1.7.4/hw/xfree86/common/xf86Globals.c
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Globals.c
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Globals.c
|
@@ -109,6 +109,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
#endif
|
||||||
@@ -106,6 +106,7 @@ xf86InfoRec xf86Info = {
|
|
||||||
.vtRequestsPending = FALSE,
|
|
||||||
.dontVTSwitch = FALSE,
|
.dontVTSwitch = FALSE,
|
||||||
.dontZap = FALSE,
|
.dontZap = FALSE,
|
||||||
+ .ZapWarning = TRUE,
|
+ .ZapWarning = TRUE,
|
||||||
.dontZoom = FALSE,
|
.dontZoom = FALSE,
|
||||||
.notrapSignals = FALSE,
|
.notrapSignals = FALSE,
|
||||||
.caughtSignal = FALSE,
|
.caughtSignal = FALSE,
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
--- xorg-server-1.7.4/hw/xfree86/common/xf86Privstr.h
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Privstr.h
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Privstr.h
|
@@ -67,6 +67,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
#endif
|
||||||
@@ -72,6 +72,7 @@ typedef struct {
|
|
||||||
Bool vtRequestsPending;
|
|
||||||
Bool dontVTSwitch;
|
Bool dontVTSwitch;
|
||||||
Bool dontZap;
|
Bool dontZap;
|
||||||
+ Bool ZapWarning;
|
+ Bool ZapWarning;
|
||||||
Bool dontZoom;
|
Bool dontZoom;
|
||||||
Bool notrapSignals; /* don't exit cleanly - die at fault */
|
Bool notrapSignals; /* don't exit cleanly - die at fault */
|
||||||
Bool caughtSignal;
|
Bool caughtSignal;
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
--- xorg-server-1.7.4/hw/xfree86/doc/man/Xorg.man.pre
|
||||||
===================================================================
|
+++ xorg-server-1.7.4/hw/xfree86/doc/man/Xorg.man.pre
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/doc/man/Xorg.man.pre
|
@@ -431,7 +431,7 @@
|
||||||
+++ xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
.B Ctrl+Alt+Backspace
|
||||||
@@ -452,8 +452,8 @@ are:
|
Immediately kills the server -- no questions asked. It can be disabled by
|
||||||
Immediately kills the server -- no questions asked. This is disabled by
|
setting the
|
||||||
default. It can be enabled with the -retro command line flag or by setting
|
|
||||||
the
|
|
||||||
-.B DontZap
|
-.B DontZap
|
||||||
-__xconfigfile__(__filemansuffix__) file option to a FALSE value.
|
|
||||||
+.B DontZap/ZapWarning
|
+.B DontZap/ZapWarning
|
||||||
+__xconfigfile__(__filemansuffix__) file options to a FALSE value.
|
__xconfigfile__(__filemansuffix__) file option to a TRUE value.
|
||||||
.TP 8
|
.TP 8
|
||||||
.B Ctrl+Alt+Keypad-Plus
|
.B Ctrl+Alt+Keypad-Plus
|
||||||
Change video mode to next one specified in the configuration file.
|
--- xorg-server-1.7.4/hw/xfree86/doc/man/xorg.conf.man.pre
|
||||||
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/xorg.conf.man.pre
|
+++ xorg-server-1.7.4/hw/xfree86/doc/man/xorg.conf.man.pre
|
||||||
===================================================================
|
@@ -479,6 +479,13 @@
|
||||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/doc/man/xorg.conf.man.pre
|
|
||||||
+++ xorg-server-1.6.3.901/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.
|
When this option is enabled, the action has no effect.
|
||||||
Default: off.
|
Default: off.
|
||||||
.TP 7
|
.TP 7
|
||||||
|
Loading…
Reference in New Issue
Block a user