forked from pool/xorg-x11-server
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,
|
||||
causing a subsequent DamageUnregister () to segfault.
|
||||
---
|
||||
mi/misprite.c | 1 +
|
||||
1 files changed, 1 insertions(+), 0 deletions(-)
|
||||
|
||||
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)
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/mi/misprite.c
|
||||
+++ xorg-server-1.7.4/mi/misprite.c
|
||||
@@ -384,6 +384,7 @@
|
||||
pScreen->InstallColormap = pScreenPriv->InstallColormap;
|
||||
pScreen->StoreColors = pScreenPriv->StoreColors;
|
||||
|
||||
+ miSpriteDisableDamage(pScreen, pScreenPriv);
|
||||
DamageDestroy (pScreenPriv->pDamage);
|
||||
|
||||
xfree ((pointer) pScreenPriv);
|
||||
--
|
||||
1.6.4.2
|
||||
|
||||
xfree (pScreenPriv);
|
||||
|
@ -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
|
||||
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
||||
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
|
||||
===================================================================
|
||||
--- hw/xfree86/common/xf86Events.c.orig
|
||||
================================================================================
|
||||
--- hw/xfree86/common/xf86Events.c
|
||||
+++ hw/xfree86/common/xf86Events.c
|
||||
@@ -124,6 +124,7 @@ typedef struct x_IHRec {
|
||||
@@ -115,6 +115,7 @@
|
||||
InputHandlerProc ihproc;
|
||||
pointer data;
|
||||
Bool enabled;
|
||||
@ -10,10 +10,10 @@ Index: hw/xfree86/common/xf86Events.c
|
||||
struct x_IHRec * next;
|
||||
} IHRec, *IHPtr;
|
||||
|
||||
@@ -513,8 +514,12 @@ xf86VTSwitch()
|
||||
for (i = 0; i < xf86NumScreens; i++)
|
||||
xf86Screens[i]->LeaveVT(i, 0);
|
||||
|
||||
@@ -456,8 +457,12 @@
|
||||
* Keep the order: Disable Device > LeaveVT
|
||||
* EnterVT > EnableDevice
|
||||
*/
|
||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||
- xf86DisableInputHandler(ih);
|
||||
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
||||
@ -22,28 +22,27 @@ Index: hw/xfree86/common/xf86Events.c
|
||||
+ else
|
||||
+ xf86DisableGeneralHandler(ih);
|
||||
+ }
|
||||
xf86AccessLeave(); /* We need this here, otherwise */
|
||||
xf86AccessLeaveState(); /* console won't be restored */
|
||||
|
||||
@@ -552,9 +557,12 @@ xf86VTSwitch()
|
||||
for (pInfo = xf86InputDevs; pInfo; pInfo = pInfo->next) {
|
||||
if (pInfo->dev) {
|
||||
xf86ReleaseKeys(pInfo->dev);
|
||||
@@ -499,8 +504,12 @@
|
||||
EnableDevice(pInfo->dev, TRUE);
|
||||
pInfo = pInfo->next;
|
||||
}
|
||||
/* XXX HACK */
|
||||
xf86ReleaseKeys(inputInfo.keyboard);
|
||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||
- xf86EnableInputHandler(ih);
|
||||
-
|
||||
+ for (ih = InputHandlers; ih; ih = ih->next) {
|
||||
+ if (ih->is_input)
|
||||
+ xf86EnableInputHandler(ih);
|
||||
+ else
|
||||
+ xf86EnableGeneralHandler(ih);
|
||||
+ }
|
||||
|
||||
xf86UnblockSIGIO(prevSIGIO);
|
||||
|
||||
} else {
|
||||
@@ -617,8 +625,12 @@ xf86VTSwitch()
|
||||
/* XXX HACK */
|
||||
xf86ReleaseKeys(inputInfo.keyboard);
|
||||
@@ -556,8 +565,12 @@
|
||||
pInfo = pInfo->next;
|
||||
}
|
||||
|
||||
- for (ih = InputHandlers; ih; ih = ih->next)
|
||||
- xf86EnableInputHandler(ih);
|
||||
@ -56,7 +55,7 @@ Index: hw/xfree86/common/xf86Events.c
|
||||
|
||||
xf86UnblockSIGIO(prevSIGIO);
|
||||
}
|
||||
@@ -655,8 +667,10 @@ xf86AddInputHandler(int fd, InputHandler
|
||||
@@ -594,8 +607,10 @@
|
||||
{
|
||||
IHPtr ih = addInputHandler(fd, proc, data);
|
||||
|
||||
@ -68,11 +67,9 @@ Index: hw/xfree86/common/xf86Events.c
|
||||
return ih;
|
||||
}
|
||||
|
||||
Index: 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().
|
||||
* pClientsReady is an array to store ready client->index values into.
|
||||
*****************/
|
||||
@ -80,7 +77,7 @@ Index: os/WaitFor.c
|
||||
|
||||
int
|
||||
WaitForSomething(int *pClientsReady)
|
||||
@@ -278,10 +279,9 @@ WaitForSomething(int *pClientsReady)
|
||||
@@ -279,10 +280,9 @@
|
||||
if (expired)
|
||||
return 0;
|
||||
}
|
||||
@ -93,7 +90,7 @@ Index: os/WaitFor.c
|
||||
|
||||
if (*checkForInput[0] == *checkForInput[1]) {
|
||||
if (timers)
|
||||
@@ -316,6 +316,12 @@ WaitForSomething(int *pClientsReady)
|
||||
@@ -317,6 +317,12 @@
|
||||
QueueWorkProc(EstablishNewConnections, NULL,
|
||||
(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.
|
||||
|
||||
Signed-off-by: Yan Li <yan.i.li@intel.com>
|
||||
---
|
||||
configure.ac | 6 +-
|
||||
xkb/README.compiled | 8 +-
|
||||
xkb/ddxLoad.c | 192 +++++++++++++++++++++++++++++++++++++++++---------
|
||||
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
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/configure.ac
|
||||
+++ xorg-server-1.7.4/configure.ac
|
||||
@@ -502,9 +502,9 @@
|
||||
AC_ARG_WITH(xkb-path, AS_HELP_STRING([--with-xkb-path=PATH], [Path to XKB base dir (default: ${datadir}/X11/xkb)]),
|
||||
[ XKBPATH="$withval" ],
|
||||
[ XKBPATH="${datadir}/X11/xkb" ])
|
||||
@ -27,23 +20,21 @@ Index: xorg-server-1.6.3.901/configure.ac
|
||||
[ XKBOUTPUT="$withval" ],
|
||||
- [ XKBOUTPUT="compiled" ])
|
||||
+ [ XKBOUTPUT="${localstatedir}/cache/xkb" ])
|
||||
AC_ARG_WITH(serverconfig-path, AS_HELP_STRING([--with-serverconfig-path=PATH],
|
||||
[Directory where ancillary server config files are installed (default: ${libdir}/xorg)]),
|
||||
[ SERVERCONFIG="$withval" ],
|
||||
@@ -1807,7 +1807,7 @@ AC_DEFINE_DIR(XKB_BIN_DIRECTORY, bindir,
|
||||
AC_ARG_WITH(default-xkb-rules, AS_HELP_STRING([--with-default-xkb-rules=RULES],
|
||||
[Keyboard ruleset (default: base/evdev)]),
|
||||
[ XKB_DFLT_RULES="$withval" ],
|
||||
@@ -1120,7 +1120,7 @@
|
||||
dnl Make sure XKM_OUTPUT_DIR is an absolute path
|
||||
XKBOUTPUT_FIRSTCHAR=`echo $XKBOUTPUT | cut -b 1`
|
||||
|
||||
if [[ x$XKBOUTPUT_FIRSTCHAR != x/ ]] ; then
|
||||
if [[ x$XKBOUTPUT_FIRSTCHAR != x/ -a x$XKBOUTPUT_FIRSTCHAR != 'x$' ]] ; then
|
||||
- XKBOUTPUT="$XKB_BASE_DIRECTORY/$XKBOUTPUT"
|
||||
+ AC_MSG_ERROR([xkb-output must be an absolute path.])
|
||||
fi
|
||||
|
||||
# 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.6.3.901.orig/xkb/README.compiled
|
||||
+++ xorg-server-1.6.3.901/xkb/README.compiled
|
||||
@@ -4,10 +4,10 @@ current keymap and/or any scratch keymap
|
||||
dnl XKM_OUTPUT_DIR (used in code) must end in / or file names get hosed
|
||||
--- xorg-server-1.7.4/xkb/README.compiled
|
||||
+++ xorg-server-1.7.4/xkb/README.compiled
|
||||
@@ -4,10 +4,10 @@
|
||||
or some other tool might destroy or replace the files in this directory,
|
||||
so it is not a safe place to store compiled keymaps for long periods of
|
||||
time. The default keymap for any server is usually stored in:
|
||||
@ -58,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
|
||||
different hosts could cause problems.
|
||||
Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/xkb/ddxLoad.c
|
||||
+++ xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
@@ -32,6 +32,12 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
--- xorg-server-1.7.4/xkb/ddxLoad.c
|
||||
+++ xorg-server-1.7.4/xkb/ddxLoad.c
|
||||
@@ -32,6 +32,12 @@
|
||||
#include <xkb-config.h>
|
||||
#endif
|
||||
|
||||
@ -74,8 +63,8 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
+#endif
|
||||
#include <stdio.h>
|
||||
#include <ctype.h>
|
||||
#define NEED_EVENTS 1
|
||||
@@ -46,24 +52,13 @@ THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
#include <X11/X.h>
|
||||
@@ -45,24 +51,13 @@
|
||||
#define XKBSRV_NEED_FILE_FUNCS
|
||||
#include <xkbsrv.h>
|
||||
#include <X11/extensions/XI.h>
|
||||
@ -101,7 +90,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
#define PRE_ERROR_MSG "\"The XKEYBOARD keymap compiler (xkbcomp) reports:\""
|
||||
#define ERROR_PREFIX "\"> \""
|
||||
#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
|
||||
@ -147,7 +136,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
XkbDDXCompileKeymapByNames( XkbDescPtr xkb,
|
||||
XkbComponentNamesPtr names,
|
||||
unsigned want,
|
||||
@@ -187,7 +221,11 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
||||
@@ -185,7 +219,11 @@
|
||||
int nameRtrnLen)
|
||||
{
|
||||
FILE * out;
|
||||
@ -160,7 +149,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
|
||||
const char *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
|
||||
used as input for xkbcomp. xkbcomp does not read from stdin. */
|
||||
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);
|
||||
+ }
|
||||
|
||||
- XkbEnsureSafeMapName(keymap);
|
||||
+ XkbEnsureSafeMapName(xkmfile);
|
||||
OutputDirectory(xkm_output_dir, sizeof(xkm_output_dir));
|
||||
|
||||
+ /* 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
|
||||
+ condition, we compile it to a tmpfile then rename it to
|
||||
+ xkmfile */
|
||||
+
|
||||
+
|
||||
#ifdef WIN32
|
||||
strcpy(tmpname, Win32TempDir());
|
||||
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
|
||||
out= Popen(buf,"w");
|
||||
#else
|
||||
@@ -250,31 +353,43 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
||||
@@ -247,31 +351,43 @@
|
||||
#endif
|
||||
|
||||
if (out!=NULL) {
|
||||
@ -326,7 +314,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
#ifdef WIN32
|
||||
/* remove the temporary file */
|
||||
unlink(tmpname);
|
||||
@@ -289,9 +404,17 @@ XkbDDXCompileKeymapByNames( XkbDescPtr
|
||||
@@ -286,9 +402,17 @@
|
||||
}
|
||||
if (nameRtrn)
|
||||
nameRtrn[0]= '\0';
|
||||
@ -345,7 +333,7 @@ Index: xorg-server-1.6.3.901/xkb/ddxLoad.c
|
||||
}
|
||||
|
||||
static FILE *
|
||||
@@ -375,7 +498,6 @@ unsigned missing;
|
||||
@@ -372,7 +496,6 @@
|
||||
DebugF("Loaded XKB keymap %s, defined=0x%x\n",fileName,(*xkbRtrn)->defined);
|
||||
}
|
||||
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 2009-10-07 04:56:23.000000000 +0200
|
||||
@@ -165,7 +165,11 @@ videoPtrToDriverList(struct pci_device *
|
||||
--- hw/xfree86/common/xf86AutoConfig.c
|
||||
+++ hw/xfree86/common/xf86AutoConfig.c
|
||||
@@ -176,7 +176,11 @@
|
||||
case 0x1142: driverList[0] = "apm"; break;
|
||||
case 0xedd8: driverList[0] = "ark"; break;
|
||||
case 0x1a03: driverList[0] = "ast"; break;
|
||||
@ -12,12 +12,13 @@
|
||||
+ break;
|
||||
case 0x102c: driverList[0] = "chips"; break;
|
||||
case 0x1013: driverList[0] = "cirrus"; break;
|
||||
case 0x8086:
|
||||
@@ -179,7 +183,15 @@ videoPtrToDriverList(struct pci_device *
|
||||
case 0x3d3d: driverList[0] = "glint"; break;
|
||||
@@ -192,8 +196,20 @@
|
||||
break;
|
||||
case 0x102b: driverList[0] = "mga"; break;
|
||||
case 0x10c8: driverList[0] = "neomagic"; break;
|
||||
case 0x105d: driverList[0] = "i128"; break;
|
||||
- case 0x10de: case 0x12d2: driverList[0] = "nv"; break;
|
||||
- case 0x1106: driverList[0] = "openchrome"; break;
|
||||
+ case 0x12d2: driverList[0] = "nv"; break;
|
||||
+ case 0x10de:
|
||||
+ driverList[0] = "nvidia";
|
||||
@ -27,31 +28,11 @@
|
||||
+ driverList[2] = "nv";
|
||||
+ }
|
||||
+ break;
|
||||
case 0x1163: driverList[0] = "rendition"; break;
|
||||
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[1] = "openchrome";
|
||||
+ driverList[2] = "unichrome";
|
||||
+ break;
|
||||
case 0x15ad: driverList[0] = "vmware"; break;
|
||||
case 0x18ca:
|
||||
if (dev->device_id == 0x47)
|
||||
@@ -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++) {
|
||||
case 0x1163: driverList[0] = "rendition"; break;
|
||||
case 0x5333:
|
||||
switch (dev->device_id)
|
||||
|
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,20 +25,19 @@ Subject: [PATCH] Fixed SYNC extension trigger BlockHandler test.
|
||||
This fixes a problem introduced with commit 1f4fb022 where an idle counter
|
||||
expires unnoticed.
|
||||
Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/Xext/sync.c
|
||||
+++ xorg-server-1.6.3.901/Xext/sync.c
|
||||
@@ -222,8 +222,7 @@ SyncCreateCounter(
|
||||
);
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/Xext/sync.c
|
||||
+++ xorg-server-1.7.4/Xext/sync.c
|
||||
@@ -94,7 +94,7 @@
|
||||
#define XSyncCAAllTrigger \
|
||||
(XSyncCACounter | XSyncCAValueType | XSyncCAValue | XSyncCATestType)
|
||||
|
||||
static void SyncComputeBracketValues(
|
||||
- SyncCounter * /* pCounter */,
|
||||
- Bool /* startOver */
|
||||
+ SyncCounter * /* pCounter */
|
||||
);
|
||||
-static void SyncComputeBracketValues(SyncCounter *, Bool);
|
||||
+static void SyncComputeBracketValues(SyncCounter *);
|
||||
|
||||
static void
|
||||
@@ -333,7 +332,7 @@ SyncDeleteTriggerFromCounter(pTrigger)
|
||||
static void SyncInitServerTime(void);
|
||||
|
||||
@@ -167,7 +167,7 @@
|
||||
}
|
||||
|
||||
if (IsSystemCounter(pTrigger->pCounter))
|
||||
@ -47,7 +46,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
}
|
||||
|
||||
|
||||
@@ -361,7 +360,7 @@ SyncAddTriggerToCounter(pTrigger)
|
||||
@@ -194,7 +194,7 @@
|
||||
pTrigger->pCounter->pTriglist = pCur;
|
||||
|
||||
if (IsSystemCounter(pTrigger->pCounter))
|
||||
@ -56,7 +55,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
|
||||
return Success;
|
||||
}
|
||||
@@ -531,7 +530,7 @@ SyncInitTrigger(client, pTrigger, counte
|
||||
@@ -351,7 +351,7 @@
|
||||
}
|
||||
else if (IsSystemCounter(pCounter))
|
||||
{
|
||||
@ -65,7 +64,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
}
|
||||
|
||||
return Success;
|
||||
@@ -829,13 +828,14 @@ SyncChangeCounter(pCounter, newval)
|
||||
@@ -640,13 +640,14 @@
|
||||
for (ptl = pCounter->pTriglist; ptl; ptl = pnext)
|
||||
{
|
||||
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
|
||||
-SyncComputeBracketValues(pCounter, startOver)
|
||||
+SyncComputeBracketValues(pCounter)
|
||||
SyncCounter *pCounter;
|
||||
- Bool startOver;
|
||||
-SyncComputeBracketValues(SyncCounter *pCounter, Bool startOver)
|
||||
+SyncComputeBracketValues(SyncCounter *pCounter)
|
||||
{
|
||||
SyncTriggerList *pCur;
|
||||
SyncTrigger *pTrigger;
|
||||
@@ -1136,58 +1135,53 @@ SyncComputeBracketValues(pCounter, start
|
||||
@@ -930,58 +931,53 @@
|
||||
if (ct == XSyncCounterNeverChanges)
|
||||
return;
|
||||
|
||||
@ -191,7 +188,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
} /* end for each trigger */
|
||||
|
||||
if (pnewgtval || pnewltval)
|
||||
@@ -2541,11 +2535,17 @@ IdleTimeQueryValue (pointer pCounter, CA
|
||||
@@ -2273,11 +2269,17 @@
|
||||
}
|
||||
|
||||
static void
|
||||
@ -214,7 +211,7 @@ Index: xorg-server-1.6.3.901/Xext/sync.c
|
||||
|
||||
if (!pIdleTimeValueLess && !pIdleTimeValueGreater)
|
||||
return;
|
||||
@@ -2563,46 +2563,57 @@ IdleTimeBlockHandler(pointer env, struct
|
||||
@@ -2295,46 +2297,57 @@
|
||||
* want level or edge trigger. Check the trigger list against the
|
||||
* current idle time, and if any succeed, bomb out of select()
|
||||
* immediately so we can reschedule.
|
||||
|
10
fpic.diff
10
fpic.diff
@ -1,10 +1,10 @@
|
||||
Index: hw/xfree86/parser/Makefile.am
|
||||
===================================================================
|
||||
--- hw/xfree86/parser/Makefile.am.orig
|
||||
================================================================================
|
||||
--- hw/xfree86/parser/Makefile.am
|
||||
+++ hw/xfree86/parser/Makefile.am
|
||||
@@ -22,7 +22,7 @@ libxf86config_a_SOURCES = \
|
||||
DRI.c \
|
||||
Extensions.c
|
||||
@@ -33,7 +33,7 @@
|
||||
$(INTERNAL_SOURCES)
|
||||
libxf86config_a_CFLAGS = $(AM_CFLAGS)
|
||||
|
||||
-AM_CFLAGS = $(DIX_CFLAGS) $(XORG_CFLAGS)
|
||||
+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 2009-11-27 22:03:59.000000000 +0100
|
||||
@@ -466,7 +466,7 @@
|
||||
--- configure.ac
|
||||
+++ configure.ac
|
||||
@@ -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)]),
|
||||
[ FONTDIR="$withval" ],
|
||||
[ 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}/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"
|
||||
+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
|
||||
darwin*) DEFAULT_FONT_PATH="${DEFAULT_FONT_PATH},/Library/Fonts,/System/Library/Fonts" ;;
|
||||
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
|
||||
===================================================================
|
||||
--- hw/xfree86/common/xf86Globals.c.orig
|
||||
================================================================================
|
||||
--- 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 *xf86InputDeviceList = NULL;
|
||||
-const char *xf86ModulePath = DEFAULT_MODULE_PATH;
|
||||
+const char *xf86ModulePath = DEFAULT_MODULE_PATH "/updates," DEFAULT_MODULE_PATH;
|
||||
MessageType xf86ModPathFrom = X_DEFAULT;
|
||||
|
@ -1,8 +1,8 @@
|
||||
Index: linux/lnx_init.c
|
||||
===================================================================
|
||||
--- linux/lnx_init.c.orig
|
||||
================================================================================
|
||||
--- linux/lnx_init.c
|
||||
+++ linux/lnx_init.c
|
||||
@@ -252,9 +252,6 @@ xf86OpenConsole(void)
|
||||
@@ -230,9 +230,6 @@
|
||||
{
|
||||
struct termios nTty;
|
||||
|
||||
@ -12,7 +12,7 @@ Index: linux/lnx_init.c
|
||||
/*
|
||||
* 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",
|
||||
strerror(errno));
|
||||
|
||||
@ -23,7 +23,7 @@ Index: linux/lnx_init.c
|
||||
if (ioctl(xf86Info.consoleFd, VT_GETMODE, &VT) < 0)
|
||||
FatalError("xf86OpenConsole: VT_GETMODE failed %s\n",
|
||||
strerror(errno));
|
||||
@@ -384,6 +385,11 @@ xf86CloseConsole()
|
||||
@@ -353,6 +354,11 @@
|
||||
|
||||
if (VTSwitch)
|
||||
{
|
||||
@ -35,7 +35,7 @@ Index: linux/lnx_init.c
|
||||
/*
|
||||
* Perform a switch back to the active VT when we were started
|
||||
*/
|
||||
@@ -398,11 +404,6 @@ xf86CloseConsole()
|
||||
@@ -367,11 +373,6 @@
|
||||
activeVT = -1;
|
||||
}
|
||||
|
||||
@ -47,12 +47,10 @@ Index: linux/lnx_init.c
|
||||
}
|
||||
close(xf86Info.consoleFd); /* make the vt-manager happy */
|
||||
|
||||
Index: shared/VTsw_usl.c
|
||||
===================================================================
|
||||
--- shared/VTsw_usl.c.orig
|
||||
--- shared/VTsw_usl.c
|
||||
+++ shared/VTsw_usl.c
|
||||
@@ -62,15 +62,15 @@ Bool
|
||||
xf86VTSwitchAway()
|
||||
@@ -62,15 +62,15 @@
|
||||
xf86VTSwitchAway(void)
|
||||
{
|
||||
xf86Info.vtRequestsPending = FALSE;
|
||||
+#ifdef OSSWITCHAWAY
|
||||
|
@ -1,6 +1,6 @@
|
||||
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
|
||||
@@ -32,8 +32,10 @@
|
||||
#define ACPI_VIDEO_HEAD_INVALID (~0u - 1)
|
||||
@ -13,7 +13,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
||||
PMClose lnxACPIOpen(void);
|
||||
|
||||
/* in milliseconds */
|
||||
@@ -52,6 +54,22 @@ lnxACPIReopen(OsTimerPtr timer, CARD32 t
|
||||
@@ -52,6 +54,22 @@
|
||||
|
||||
#define LINE_LENGTH 80
|
||||
|
||||
@ -36,7 +36,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
||||
static int
|
||||
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;
|
||||
struct sockaddr_un addr;
|
||||
int r = -1;
|
||||
static int warned = 0;
|
||||
|
||||
-#ifdef DEBUG
|
||||
- ErrorF("ACPI: OSPMOpen called\n");
|
||||
-#endif
|
||||
- DebugF("ACPI: OSPMOpen called\n");
|
||||
if (ACPIihPtr || !xf86Info.pmFlag)
|
||||
return NULL;
|
||||
|
||||
@@ -164,6 +179,27 @@ lnxACPIOpen(void)
|
||||
@@ -164,6 +181,27 @@
|
||||
return lnxCloseACPI;
|
||||
}
|
||||
|
||||
@ -83,7 +82,7 @@ Index: hw/xfree86/os-support/linux/lnx_acpi.c
|
||||
static void
|
||||
lnxCloseACPI(void)
|
||||
{
|
||||
@@ -177,5 +213,11 @@ lnxCloseACPI(void)
|
||||
@@ -175,5 +213,11 @@
|
||||
shutdown(fd, 2);
|
||||
close(fd);
|
||||
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.orig
|
||||
--- hw/xfree86/os-support/linux/lnx_apm.c
|
||||
+++ hw/xfree86/os-support/linux/lnx_apm.c
|
||||
@@ -12,6 +12,7 @@
|
||||
|
||||
@ -107,7 +104,7 @@ Index: hw/xfree86/os-support/linux/lnx_apm.c
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_APM
|
||||
@@ -150,6 +151,14 @@ xf86OSPMOpen(void)
|
||||
@@ -150,6 +151,14 @@
|
||||
ret = lnxAPMOpen();
|
||||
#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
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86AutoConfig.c
|
||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86AutoConfig.c
|
||||
@@ -175,6 +175,9 @@ videoPtrToDriverList(struct pci_device *
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/hw/xfree86/common/xf86AutoConfig.c
|
||||
+++ xorg-server-1.7.4/hw/xfree86/common/xf86AutoConfig.c
|
||||
@@ -186,12 +186,14 @@
|
||||
case 0x3d3d: driverList[0] = "glint"; break;
|
||||
case 0x105d: driverList[0] = "i128"; break;
|
||||
case 0x8086:
|
||||
if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) {
|
||||
driverList[0] = "i740";
|
||||
+ } if ((dev->device_id == 0x8109) || (dev->device_id == 0x8108) || (dev->device_id == 0x4102) ) {
|
||||
+ driverList[0] = "psb";
|
||||
+ driverList[1] = "psb_drv";
|
||||
} else {
|
||||
driverList[0] = "intel";
|
||||
driverList[1] = "i810";
|
||||
- if ((dev->device_id == 0x00d1) || (dev->device_id == 0x7800)) {
|
||||
- driverList[0] = "i740";
|
||||
- } else if (dev->device_id == 0x8108) {
|
||||
- break; /* "hooray" for poulsbo */
|
||||
- } else {
|
||||
- driverList[0] = "intel";
|
||||
+ switch (dev->device_id)
|
||||
+ {
|
||||
+ 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
|
||||
===================================================================
|
||||
--- hw/dmx/Makefile.am.orig
|
||||
================================================================================
|
||||
--- hw/dmx/Makefile.am
|
||||
+++ hw/dmx/Makefile.am
|
||||
@@ -1,6 +1,6 @@
|
||||
DIST_SUBDIRS = input vnc config glxProxy examples doc
|
||||
@ -10,11 +10,9 @@ Index: hw/dmx/Makefile.am
|
||||
bin_PROGRAMS = Xdmx
|
||||
|
||||
if XINERAMA
|
||||
Index: 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 */
|
||||
#define DMXEXT
|
||||
|
||||
@ -23,25 +21,20 @@ Index: hw/dmx/dmx-config.h
|
||||
+/* Disable VNC ability */
|
||||
+#undef DMXVNC
|
||||
|
||||
/* Disable the extensions that are not currently supported */
|
||||
#undef MULTIBUFFER
|
||||
Index: hw/dmx/input/Makefile.am
|
||||
===================================================================
|
||||
--- hw/dmx/input/Makefile.am.orig
|
||||
#endif /* DMX_CONFIG_H */
|
||||
--- 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 \
|
||||
$(GLX_INCS) \
|
||||
-DHAVE_DMX_CONFIG_H \
|
||||
- -DDMXVNC=1 \
|
||||
$(GLX_DEFS) \
|
||||
@DMXMODULES_CFLAGS@
|
||||
|
||||
Index: 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 \
|
||||
-DHAVE_DMX_CONFIG_H \
|
||||
$(DIX_CFLAGS) \
|
||||
|
@ -1,8 +1,27 @@
|
||||
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.6.3.901/hw/vnc/cursor.c
|
||||
@@ -262,7 +262,7 @@ rfbSendCursorPos(cl, pScreen)
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/configure.ac
|
||||
+++ xorg-server-1.7.4/configure.ac
|
||||
@@ -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 (pScreen == pCursorScreen)
|
||||
@ -11,11 +30,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/cursor.c
|
||||
#else
|
||||
rfbSpriteGetCursorPos(pScreen, &x, &y);
|
||||
#endif
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/cutpaste.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
||||
@@ -66,7 +66,7 @@ rfbSetXCutText(char *str, int len)
|
||||
--- xorg-server-1.7.4/hw/vnc/cutpaste.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/cutpaste.c
|
||||
@@ -66,7 +66,7 @@
|
||||
event.u.selectionClear.time = GetTimeInMillis();
|
||||
event.u.selectionClear.window = pSel->window;
|
||||
event.u.selectionClear.atom = pSel->selection;
|
||||
@ -24,11 +41,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/cutpaste.c
|
||||
NoEventMask, NoEventMask /* CantBeFiltered */,
|
||||
NullGrab);
|
||||
}
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/dispcur.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
@@ -74,7 +74,10 @@ in this Software without prior written a
|
||||
--- xorg-server-1.7.4/hw/vnc/dispcur.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/dispcur.c
|
||||
@@ -74,7 +74,10 @@
|
||||
|
||||
/* 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);
|
||||
|
||||
@@ -205,7 +208,7 @@ rfbDCRealizeCursor (pScreen, pCursor)
|
||||
@@ -205,7 +208,7 @@
|
||||
CursorPtr pCursor;
|
||||
{
|
||||
if (pCursor->bits->refcnt <= 1)
|
||||
@ -49,7 +64,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -303,7 +306,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP
|
||||
@@ -303,7 +306,7 @@
|
||||
xfree ((pointer) pPriv);
|
||||
return (rfbDCCursorPtr)NULL;
|
||||
}
|
||||
@ -58,7 +73,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
return pPriv;
|
||||
}
|
||||
pPriv->pPicture = 0;
|
||||
@@ -321,7 +324,7 @@ rfbDCRealize (ScreenPtr pScreen, CursorP
|
||||
@@ -321,7 +324,7 @@
|
||||
xfree ((pointer) pPriv);
|
||||
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 */
|
||||
|
||||
@@ -368,7 +371,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor)
|
||||
@@ -368,7 +371,7 @@
|
||||
rfbDCCursorPtr pPriv;
|
||||
|
||||
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->sourceBits)
|
||||
@@ -380,7 +383,7 @@ rfbDCUnrealizeCursor (pScreen, pCursor)
|
||||
@@ -380,7 +383,7 @@
|
||||
FreePicture (pPriv->pPicture, 0);
|
||||
#endif
|
||||
xfree ((pointer) pPriv);
|
||||
@ -85,7 +100,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
@@ -439,7 +442,7 @@ rfbDCPutUpCursor (pScreen, pCursor, x, y
|
||||
@@ -439,7 +442,7 @@
|
||||
WindowPtr pWin;
|
||||
|
||||
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
||||
@ -94,7 +109,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
if (!pPriv)
|
||||
{
|
||||
pPriv = rfbDCRealize(pScreen, pCursor);
|
||||
@@ -690,7 +693,7 @@ rfbDCMoveCursor (pScreen, pCursor, x, y,
|
||||
@@ -690,7 +693,7 @@
|
||||
PixmapPtr pTemp;
|
||||
|
||||
pPriv = (rfbDCCursorPtr)dixLookupPrivate(&pCursor->bits->devPrivates,
|
||||
@ -103,11 +118,17 @@ Index: xorg-server-1.6.3.901/hw/vnc/dispcur.c
|
||||
if (!pPriv)
|
||||
{
|
||||
pPriv = rfbDCRealize(pScreen, pCursor);
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/init.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/init.c
|
||||
@@ -138,7 +138,7 @@ static void rfbCrossScreen(ScreenPtr pSc
|
||||
--- xorg-server-1.7.4/hw/vnc/init.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/init.c
|
||||
@@ -90,6 +90,7 @@
|
||||
#include "dix.h"
|
||||
#include "micmap.h"
|
||||
#include "rfb.h"
|
||||
+#include "xserver-properties.h"
|
||||
|
||||
#ifdef CORBA
|
||||
#include <vncserverctrl.h>
|
||||
@@ -138,7 +139,7 @@
|
||||
|
||||
|
||||
static void
|
||||
@ -116,7 +137,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
||||
{
|
||||
#if 0
|
||||
DeviceIntPtr pDev = NULL;
|
||||
@@ -775,8 +775,8 @@ InitInput(argc, argv)
|
||||
@@ -775,8 +776,8 @@
|
||||
char *argv[];
|
||||
{
|
||||
DeviceIntPtr p, k;
|
||||
@ -127,71 +148,102 @@ Index: xorg-server-1.6.3.901/hw/vnc/init.c
|
||||
RegisterKeyboardDevice(k);
|
||||
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[5] = 5;
|
||||
InitPointerDeviceStruct(pDev, map, 5,
|
||||
- InitPointerDeviceStruct(pDev, map, 5,
|
||||
- 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,
|
||||
GetMaximumEventsNum(), 2 /* numAxes */);
|
||||
- GetMaximumEventsNum(), 2 /* numAxes */);
|
||||
+ GetMaximumEventsNum(), 2 /* numAxes */, axes_labels);
|
||||
vncSetPointerDevice(pDevice);
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/kbdptr.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/kbdptr.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/kbdptr.c
|
||||
@@ -74,19 +74,26 @@ vncSetPointerDevice(DeviceIntPtr ptr)
|
||||
break;
|
||||
|
||||
--- xorg-server-1.7.4/hw/vnc/kbdptr.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/kbdptr.c
|
||||
@@ -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
|
||||
EnqueueMotion(DeviceIntPtr ptrDev, int x, int y)
|
||||
{
|
||||
- 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;
|
||||
+ EventListPtr events;
|
||||
valuators[0] = x;
|
||||
valuators[1] = y;
|
||||
+ for (i = 0; i < maxEventsNum; i++) {
|
||||
+ evls[i].event = &events[i];
|
||||
+ evls[i].evlen = sizeof(xEvent);
|
||||
+ }
|
||||
+ GetEventList(&events);
|
||||
+
|
||||
if (!ptrDev) {
|
||||
ErrorF("VNC: In EnqueueMotion() ptrDev=NULL\n");
|
||||
return;
|
||||
}
|
||||
- nevents = GetPointerEvents(events, ptrDev, MotionNotify, detail,
|
||||
+ nevents = GetPointerEvents(evls, ptrDev, MotionNotify, detail,
|
||||
@@ -85,8 +87,7 @@
|
||||
nevents = GetPointerEvents(events, ptrDev, MotionNotify, detail,
|
||||
POINTER_ABSOLUTE, 0, 2, valuators);
|
||||
for (i = 0; i < nevents; i++)
|
||||
mieqEnqueue(ptrDev, events + i);
|
||||
free(events);
|
||||
+ free(evls);
|
||||
- mieqEnqueue(ptrDev, events + i);
|
||||
- free(events);
|
||||
+ mieqEnqueue(ptrDev, (InternalEvent*)(events + i)->event);
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -94,33 +101,47 @@ EnqueueMotion(DeviceIntPtr ptrDev, int x
|
||||
@@ -94,8 +95,10 @@
|
||||
static void
|
||||
EnqueueButton(DeviceIntPtr ptrDev, int type, int detail)
|
||||
{
|
||||
- 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;
|
||||
+ for (i = 0; i < maxEventsNum; i++) {
|
||||
+ evls[i].event = &events[i];
|
||||
+ evls[i].evlen = sizeof(xEvent);
|
||||
+ }
|
||||
+ EventListPtr events;
|
||||
+ GetEventList(&events);
|
||||
+
|
||||
if (!ptrDev) {
|
||||
ErrorF("VNC: In EnqueueButton() ptrDev=NULL\n");
|
||||
return;
|
||||
}
|
||||
- nevents = GetPointerEvents(events, ptrDev, type, detail,
|
||||
+ nevents = GetPointerEvents(evls, ptrDev, type, detail,
|
||||
@@ -103,27 +106,26 @@
|
||||
nevents = GetPointerEvents(events, ptrDev, type, detail,
|
||||
POINTER_ABSOLUTE, 0, 0, NULL/*valuators*/);
|
||||
for (i = 0; i < nevents; i++)
|
||||
mieqEnqueue(ptrDev, events + i);
|
||||
free(events);
|
||||
+ free(evls);
|
||||
- mieqEnqueue(ptrDev, events + i);
|
||||
- free(events);
|
||||
+ 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)
|
||||
{
|
||||
- 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;
|
||||
+ for (i = 0; i < maxEventsNum; i++) {
|
||||
+ evls[i].event = &events[i];
|
||||
+ evls[i].evlen = sizeof(xEvent);
|
||||
+ }
|
||||
+ EventListPtr events;
|
||||
+ GetEventList(&events);
|
||||
+
|
||||
if (!kbdDev) {
|
||||
ErrorF("VNC: In EnqueueKey() kbdDev=NULL\n");
|
||||
return;
|
||||
}
|
||||
- nevents = GetKeyboardEvents(events, kbdDev, type, detail);
|
||||
+ nevents = GetKeyboardEvents(evls, kbdDev, type, detail);
|
||||
nevents = GetKeyboardEvents(events, kbdDev, type, detail);
|
||||
for (i = 0; i < nevents; i++)
|
||||
mieqEnqueue(kbdDev, events + i);
|
||||
free(events);
|
||||
+ free(evls);
|
||||
- mieqEnqueue(kbdDev, events + i);
|
||||
- free(events);
|
||||
+ 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;
|
||||
}
|
||||
|
||||
- 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",
|
||||
(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
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbkeyb.c
|
||||
@@ -388,7 +388,7 @@ static XF86ModuleVersionInfo xf86rfbKeyb
|
||||
}
|
||||
|
||||
+ xkb = &kbdDevice->key->xkbInfo->state;
|
||||
if (down) {
|
||||
- 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",
|
||||
MODINFOSTRING1,
|
||||
MODINFOSTRING2,
|
||||
@ -242,11 +340,24 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbkeyb.c
|
||||
1, 0, 0,
|
||||
ABI_CLASS_XINPUT,
|
||||
ABI_XINPUT_VERSION,
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/rfbmouse.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
||||
@@ -98,10 +98,12 @@ xf86rfbMouseControlProc(DeviceIntPtr dev
|
||||
--- xorg-server-1.7.4/hw/vnc/rfbmouse.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/rfbmouse.c
|
||||
@@ -51,7 +51,7 @@
|
||||
#include <mipointer.h>
|
||||
#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;
|
||||
int (*func2)(void);
|
||||
|
||||
@ -259,17 +370,31 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
||||
|
||||
if (LoaderSymbol("GetMotionHistorySize"))
|
||||
func2 = LoaderSymbol("GetMotionHistorySize");
|
||||
@@ -120,7 +122,9 @@ xf86rfbMouseControlProc(DeviceIntPtr dev
|
||||
@@ -119,10 +124,21 @@
|
||||
map[3] = 3;
|
||||
map[4] = 4;
|
||||
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
|
||||
func1,
|
||||
+#endif
|
||||
PtrDeviceControl,
|
||||
(*func2)(), 2);
|
||||
- (*func2)(), 2);
|
||||
+ (*func2)(), 2, axes_labels);
|
||||
break;
|
||||
@@ -243,7 +247,7 @@ static XF86ModuleVersionInfo xf86rfbMous
|
||||
|
||||
case DEVICE_ON:
|
||||
@@ -243,7 +259,7 @@
|
||||
"xf4vnc Project, see http://xf4vnc.sf.net",
|
||||
MODINFOSTRING1,
|
||||
MODINFOSTRING2,
|
||||
@ -278,11 +403,17 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbmouse.c
|
||||
1, 0, 0,
|
||||
ABI_CLASS_XINPUT,
|
||||
ABI_XINPUT_VERSION,
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/rfbserver.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
||||
@@ -1122,8 +1122,8 @@ rfbProcessClientNormalMessage(cl)
|
||||
--- xorg-server-1.7.4/hw/vnc/rfbserver.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/rfbserver.c
|
||||
@@ -53,6 +53,7 @@
|
||||
#include "propertyst.h"
|
||||
#include <X11/Xatom.h>
|
||||
#include <mi.h>
|
||||
+#include <inputstr.h>
|
||||
|
||||
#ifdef CORBA
|
||||
#include <vncserverctrl.h>
|
||||
@@ -1122,8 +1123,8 @@
|
||||
|
||||
{
|
||||
int x, y;
|
||||
@ -293,11 +424,9 @@ Index: xorg-server-1.6.3.901/hw/vnc/rfbserver.c
|
||||
}
|
||||
#endif
|
||||
|
||||
Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/vnc/sprite.c
|
||||
+++ xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
@@ -112,7 +112,8 @@ static void rfbSpriteSaveDoomedAreas
|
||||
--- xorg-server-1.7.4/hw/vnc/sprite.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/sprite.c
|
||||
@@ -112,7 +112,8 @@
|
||||
static RegionPtr rfbSpriteRestoreAreas(WindowPtr pWin, RegionPtr pRgnExposed);
|
||||
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 = \
|
||||
((rfbSpriteScreenPtr)dixLookupPrivate(&(pScreen)->devPrivates, \
|
||||
@@ -144,7 +145,8 @@ static GCFuncs rfbSpriteGCFuncs = {
|
||||
@@ -144,7 +145,8 @@
|
||||
rfbSpriteCopyClip,
|
||||
};
|
||||
|
||||
@ -317,7 +446,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
|
||||
#define GC_FUNC_PROLOGUE(pGC) \
|
||||
rfbSpriteGCPtr pGCPriv = \
|
||||
@@ -289,23 +291,27 @@ static GCOps rfbSpriteGCOps = {
|
||||
@@ -289,23 +291,27 @@
|
||||
* 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
|
||||
|
||||
static Bool
|
||||
@ -359,7 +488,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
{
|
||||
rfbSpriteScreenPtr pScreenPriv;
|
||||
|
||||
@@ -1975,7 +1981,7 @@ rfbSpriteRealizeCursor (ScreenPtr pScree
|
||||
@@ -1975,7 +1981,7 @@
|
||||
}
|
||||
|
||||
static Bool
|
||||
@ -368,7 +497,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
{
|
||||
rfbSpriteScreenPtr pScreenPriv;
|
||||
|
||||
@@ -1985,7 +1991,7 @@ rfbSpriteUnrealizeCursor (ScreenPtr pScr
|
||||
@@ -1985,7 +1991,7 @@
|
||||
}
|
||||
|
||||
static void
|
||||
@ -377,7 +506,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
{
|
||||
rfbSpriteScreenPtr pScreenPriv;
|
||||
rfbClientPtr cl, nextCl;
|
||||
@@ -2101,13 +2107,24 @@ rfbSpriteSetCursor (ScreenPtr pScreen, C
|
||||
@@ -2101,13 +2107,24 @@
|
||||
}
|
||||
|
||||
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
|
||||
@ -415,7 +544,7 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
{
|
||||
rfbClientPtr cl;
|
||||
rfbSpriteScreenPtr pPriv;
|
||||
@@ -2230,7 +2245,7 @@ rfbDisplayCursor(pScreen, pCursor)
|
||||
@@ -2230,7 +2245,7 @@
|
||||
|
||||
pPriv = (rfbSpriteScreenPtr)dixLookupPrivate(&pScreen->devPrivates,
|
||||
rfbSpriteScreenKey);
|
||||
@ -424,10 +553,8 @@ Index: xorg-server-1.6.3.901/hw/vnc/sprite.c
|
||||
|
||||
/* send new cursor shape to interested viewers */
|
||||
for (cl = rfbClientHead; cl ; cl = cl->next) {
|
||||
Index: xorg-server-1.6.3.901/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
|
||||
--- xorg-server-1.7.4/hw/vnc/vncext.c
|
||||
+++ xorg-server-1.7.4/hw/vnc/vncext.c
|
||||
@@ -36,8 +36,9 @@
|
||||
#include <arpa/inet.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);
|
||||
void VncExtensionInit(void);
|
||||
@@ -514,7 +515,7 @@ GenerateVncConnectedEvent(int sock)
|
||||
@@ -514,7 +515,7 @@
|
||||
else
|
||||
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);
|
||||
}
|
||||
pn = pn->next;
|
||||
@@ -557,7 +558,7 @@ GenerateVncChromiumConnectedEvent(int so
|
||||
@@ -557,7 +558,7 @@
|
||||
else
|
||||
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);
|
||||
}
|
||||
pn = pn->next;
|
||||
@@ -586,7 +587,7 @@ GenerateVncDisconnectedEvent(int sock)
|
||||
@@ -586,7 +587,7 @@
|
||||
conn.type = VncEventBase + XVncDisconnected;
|
||||
conn.sequenceNumber = pn->client->sequence;
|
||||
conn.connected = sock;
|
||||
@ -467,20 +594,28 @@ Index: xorg-server-1.6.3.901/hw/vnc/vncext.c
|
||||
NoEventMask, NullGrab);
|
||||
}
|
||||
pn = pn->next;
|
||||
Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/vnc/vncInit.c
|
||||
+++ xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
@@ -35,7 +35,7 @@
|
||||
--- xorg-server-1.7.4/hw/xfree86/vnc/vncInit.c
|
||||
+++ xorg-server-1.7.4/hw/xfree86/vnc/vncInit.c
|
||||
@@ -34,8 +34,7 @@
|
||||
|
||||
#include "xf86.h"
|
||||
#include "xf86_OSproc.h"
|
||||
#include "xf86Resources.h"
|
||||
-#include "xf86Resources.h"
|
||||
-#include "xf86Version.h"
|
||||
+#include "xorgVersion.h"
|
||||
|
||||
int vncScreenPrivateIndex = -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 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 = {
|
||||
vncCursorRealizeCursor,
|
||||
@@ -389,23 +389,23 @@ VNCInit(ScreenPtr pScreen, unsigned char
|
||||
@@ -389,23 +390,23 @@
|
||||
/****** miPointerSpriteFunctions *******/
|
||||
|
||||
static Bool
|
||||
@ -526,7 +661,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
{
|
||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||
|
||||
@@ -426,11 +426,11 @@ vncCursorSetCursor(ScreenPtr pScreen, Cu
|
||||
@@ -426,11 +427,11 @@
|
||||
pScreenPriv->cursorIsDrawn = TRUE;
|
||||
#endif
|
||||
|
||||
@ -540,7 +675,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
{
|
||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||
rfbClientPtr cl;
|
||||
@@ -440,7 +440,7 @@ vncCursorMoveCursor(ScreenPtr pScreen, i
|
||||
@@ -440,7 +441,7 @@
|
||||
cl->cursorWasMoved = TRUE;
|
||||
}
|
||||
|
||||
@ -549,7 +684,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
}
|
||||
|
||||
Bool
|
||||
@@ -505,9 +505,7 @@ vncUseHWCursorARGB(pScreen, pCursor)
|
||||
@@ -505,9 +506,7 @@
|
||||
#endif
|
||||
|
||||
static Bool
|
||||
@ -560,7 +695,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
{
|
||||
vncScreenPtr pScreenPriv = VNCPTR(pScreen);
|
||||
rfbClientPtr cl;
|
||||
@@ -520,7 +518,7 @@ vncDisplayCursor(pScreen, pCursor)
|
||||
@@ -520,7 +519,7 @@
|
||||
cl->cursorWasChanged = TRUE;
|
||||
}
|
||||
|
||||
@ -569,3 +704,19 @@ Index: xorg-server-1.6.3.901/hw/xfree86/vnc/vncInit.c
|
||||
|
||||
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
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# 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
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -20,7 +20,7 @@
|
||||
%define moblin 0
|
||||
|
||||
Name: xorg-x11-server
|
||||
%define dirsuffix 1.6.5
|
||||
%define dirsuffix 1.7.4
|
||||
%define fglrx_driver_hack 0
|
||||
### FIXME
|
||||
%define vnc 1
|
||||
@ -33,7 +33,7 @@ BuildRequires: libjpeg-devel
|
||||
Url: http://xorg.freedesktop.org/
|
||||
%define EXPERIMENTAL 0
|
||||
Version: 7.4
|
||||
Release: 64
|
||||
Release: 65
|
||||
License: GPLv2+ ; MIT License (or similar)
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||
Group: System/X11/Servers/XF86_4
|
||||
@ -43,8 +43,8 @@ PreReq: %fillup_prereq
|
||||
Requires: pkgconfig xorg-x11-fonts-core xorg-x11
|
||||
%if %suse_version > 1010
|
||||
%ifnarch s390 s390x
|
||||
Provides: VIDEO_ABI_VERSION = 5
|
||||
Provides: INPUT_ABI_VERSION = 4
|
||||
Provides: VIDEO_ABI_VERSION = 6
|
||||
Provides: INPUT_ABI_VERSION = 7
|
||||
Requires: libpixman-1-0 >= 0.15.2
|
||||
%endif
|
||||
%endif
|
||||
@ -73,7 +73,6 @@ Patch18: p_ia64-console.diff
|
||||
Patch23: disable-fbblt-opt.diff
|
||||
Patch27: mouse.diff
|
||||
Patch29: xephyr.diff
|
||||
Patch32: acpi_events.diff
|
||||
Patch34: p_pci-off-by-one.diff.ia64
|
||||
Patch36: libdrm.diff
|
||||
%if %vnc
|
||||
@ -88,7 +87,6 @@ Patch46: xorg-server-xf4vnc-busyloop.diff
|
||||
Patch47: xorg-server-xf4vnc-clientTimeout.diff
|
||||
Patch48: xorg-server-xf4vnc-fix.diff
|
||||
%endif
|
||||
Patch41: loadmod-bug197195.diff
|
||||
Patch45: bug-197858_dpms.diff
|
||||
Patch63: xorg-x11-server-1.2.99-unbreak-domain.patch
|
||||
Patch67: xorg-docs.diff
|
||||
@ -100,10 +98,7 @@ Patch101: zap_warning_xserver.diff
|
||||
Patch103: confine_to_shape.diff
|
||||
Patch104: bitmap_always_unscaled.diff
|
||||
Patch106: randr1_1-sig11.diff
|
||||
Patch109: events.diff
|
||||
Patch112: fix-dpi-values.diff
|
||||
Patch113: no-return-in-nonvoid-function.diff
|
||||
Patch117: acpi-warning.diff
|
||||
Patch118: exa-greedy.diff
|
||||
Patch123: vidmode-sig11.diff
|
||||
Patch125: 0001-Xinput-Catch-missing-configlayout-when-deleting-dev.patch
|
||||
@ -111,15 +106,10 @@ Patch127: dpms_screensaver.diff
|
||||
Patch128: pci-legacy-mem-fallback.diff
|
||||
Patch129: bug474071-fix1.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
|
||||
Patch144: keyrelease-1.5.2.diff
|
||||
Patch145: driver-autoconfig.diff
|
||||
Patch147: truetype_fontpath.diff
|
||||
Patch148: commit-c941479.diff
|
||||
# Moblin
|
||||
Patch161: libdri_noPanoramiXExtension_symbol.patch
|
||||
Patch162: cache-xkbcomp-output-for-fast-start-up.patch
|
||||
%if %moblin
|
||||
Patch163: xserver-1.5.0-bg-none-root.patch
|
||||
@ -136,10 +126,7 @@ Patch169: moblin-xorg-x11-nonroot-vesa.patch
|
||||
Patch170: xserver-boottime.patch
|
||||
Patch171: moblin-use_preferred_mode_for_all_outputs.diff
|
||||
%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
|
||||
Patch532341: bug532341.diff
|
||||
Patch202: 0001-Check-harder-for-primary-PCI-device.patch
|
||||
Patch203: 0001-Fix-segfault-when-killing-X-with-ctrl-alt-backspace.patch
|
||||
Patch204: missing_font_paths.diff
|
||||
@ -214,8 +201,6 @@ popd
|
||||
%patch23
|
||||
%patch27
|
||||
%patch29
|
||||
### Bug 197572: X.Org PCI/IA64 patches
|
||||
%patch32 -p1
|
||||
### FIXME
|
||||
#%patch34 -p0
|
||||
%patch36 -p0
|
||||
@ -230,7 +215,6 @@ popd
|
||||
%patch48 -p1
|
||||
chmod 755 hw/vnc/symlink-vnc.sh
|
||||
%endif
|
||||
%patch41 -p1
|
||||
%patch45 -p0
|
||||
### FIXME
|
||||
#%patch63 -p1
|
||||
@ -246,11 +230,8 @@ popd
|
||||
%patch103
|
||||
%patch104 -p1
|
||||
%patch106 -p1
|
||||
%patch109 -p1
|
||||
%patch112 -p0
|
||||
%patch113 -p0
|
||||
%patch117
|
||||
%patch118 -p1
|
||||
#patch118 -p1
|
||||
%patch123 -p0
|
||||
%patch125 -p1
|
||||
%patch127 -p1
|
||||
@ -259,15 +240,10 @@ pushd hw/xfree86/os-support/bus
|
||||
%patch129 -p0
|
||||
popd
|
||||
%patch132 -p1
|
||||
%patch140 -p1
|
||||
%patch142 -p1
|
||||
%patch143 -p0
|
||||
%patch144 -p1
|
||||
%patch145 -p0
|
||||
%patch147 -p0
|
||||
### Bug #528397
|
||||
#%patch148 -p1 -R
|
||||
%patch161 -p1
|
||||
%patch162 -p1
|
||||
%if %moblin
|
||||
%patch163 -p1
|
||||
@ -282,10 +258,7 @@ popd
|
||||
%patch171 -p1
|
||||
%endif
|
||||
#
|
||||
%patch190 -p1
|
||||
%patch191 -p1
|
||||
%patch200 -p1
|
||||
%patch532341 -p1
|
||||
%patch202 -p1
|
||||
%patch203 -p1
|
||||
%patch204 -p0
|
||||
@ -541,9 +514,9 @@ exit 0
|
||||
%dir /etc/modprobe.d
|
||||
/etc/modprobe.d/50-nvidia.conf
|
||||
%endif
|
||||
%ifarch ppc64 x86_64
|
||||
%dir /usr/%{_lib}/X11
|
||||
%endif
|
||||
#%ifarch ppc64 x86_64
|
||||
#%dir /usr/%{_lib}/X11
|
||||
#%endif
|
||||
%dir /usr/%{_lib}/xorg
|
||||
%ifnarch s390 s390x
|
||||
%dir /var/lib/X11
|
||||
@ -571,7 +544,7 @@ exit 0
|
||||
/usr/bin/gtf
|
||||
%endif
|
||||
%ifnarch s390 s390x
|
||||
/usr/%{_lib}/X11/*
|
||||
#/usr/%{_lib}/X11/*
|
||||
/usr/%{_lib}/xorg/modules/
|
||||
%{_mandir}/man4/*
|
||||
%endif
|
||||
|
@ -1,8 +1,8 @@
|
||||
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.6.3.901/hw/xfree86/common/xf86Config.c
|
||||
@@ -706,6 +706,7 @@ typedef enum {
|
||||
================================================================================
|
||||
--- xorg-server-1.7.4/hw/xfree86/common/xf86Config.c
|
||||
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Config.c
|
||||
@@ -679,6 +679,7 @@
|
||||
FLAG_NOTRAPSIGNALS,
|
||||
FLAG_DONTVTSWITCH,
|
||||
FLAG_DONTZAP,
|
||||
@ -10,7 +10,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
||||
FLAG_DONTZOOM,
|
||||
FLAG_DISABLEVIDMODE,
|
||||
FLAG_ALLOWNONLOCAL,
|
||||
@@ -743,6 +744,8 @@ static OptionInfoRec FlagOptions[] = {
|
||||
@@ -717,6 +718,8 @@
|
||||
{0}, FALSE },
|
||||
{ FLAG_DONTZAP, "DontZap", OPTV_BOOLEAN,
|
||||
{0}, FALSE },
|
||||
@ -19,7 +19,7 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Config.c
|
||||
{ FLAG_DONTZOOM, "DontZoom", OPTV_BOOLEAN,
|
||||
{0}, FALSE },
|
||||
{ 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_DONTVTSWITCH, &xf86Info.dontVTSwitch);
|
||||
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_IGNORE_ABI, &xf86Info.ignoreABI);
|
||||
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
|
||||
@@ -191,12 +191,26 @@ xf86ProcessActionEvent(ActionEvent actio
|
||||
#endif
|
||||
--- xorg-server-1.7.4/hw/xfree86/common/xf86Events.c
|
||||
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Events.c
|
||||
@@ -180,12 +180,26 @@
|
||||
DebugF("ProcessActionEvent(%d,%x)\n", (int) action, arg);
|
||||
switch (action) {
|
||||
case ACTION_TERMINATE:
|
||||
- if (!xf86Info.dontZap) {
|
||||
@ -62,50 +60,40 @@ Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Events.c
|
||||
break;
|
||||
case ACTION_NEXT_MODE:
|
||||
if (!xf86Info.dontZoom)
|
||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Globals.c
|
||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Globals.c
|
||||
@@ -106,6 +106,7 @@ xf86InfoRec xf86Info = {
|
||||
.vtRequestsPending = FALSE,
|
||||
--- xorg-server-1.7.4/hw/xfree86/common/xf86Globals.c
|
||||
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Globals.c
|
||||
@@ -109,6 +109,7 @@
|
||||
#endif
|
||||
.dontVTSwitch = FALSE,
|
||||
.dontZap = FALSE,
|
||||
+ .ZapWarning = TRUE,
|
||||
.dontZoom = FALSE,
|
||||
.notrapSignals = FALSE,
|
||||
.caughtSignal = FALSE,
|
||||
Index: xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/common/xf86Privstr.h
|
||||
+++ xorg-server-1.6.3.901/hw/xfree86/common/xf86Privstr.h
|
||||
@@ -72,6 +72,7 @@ typedef struct {
|
||||
Bool vtRequestsPending;
|
||||
--- xorg-server-1.7.4/hw/xfree86/common/xf86Privstr.h
|
||||
+++ xorg-server-1.7.4/hw/xfree86/common/xf86Privstr.h
|
||||
@@ -67,6 +67,7 @@
|
||||
#endif
|
||||
Bool dontVTSwitch;
|
||||
Bool dontZap;
|
||||
+ Bool ZapWarning;
|
||||
Bool dontZoom;
|
||||
Bool notrapSignals; /* don't exit cleanly - die at fault */
|
||||
Bool caughtSignal;
|
||||
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
||||
===================================================================
|
||||
--- xorg-server-1.6.3.901.orig/hw/xfree86/doc/man/Xorg.man.pre
|
||||
+++ xorg-server-1.6.3.901/hw/xfree86/doc/man/Xorg.man.pre
|
||||
@@ -452,8 +452,8 @@ are:
|
||||
Immediately kills the server -- no questions asked. This is disabled by
|
||||
default. It can be enabled with the -retro command line flag or by setting
|
||||
the
|
||||
--- xorg-server-1.7.4/hw/xfree86/doc/man/Xorg.man.pre
|
||||
+++ xorg-server-1.7.4/hw/xfree86/doc/man/Xorg.man.pre
|
||||
@@ -431,7 +431,7 @@
|
||||
.B Ctrl+Alt+Backspace
|
||||
Immediately kills the server -- no questions asked. It can be disabled by
|
||||
setting the
|
||||
-.B DontZap
|
||||
-__xconfigfile__(__filemansuffix__) file option to a FALSE value.
|
||||
+.B DontZap/ZapWarning
|
||||
+__xconfigfile__(__filemansuffix__) file options to a FALSE value.
|
||||
__xconfigfile__(__filemansuffix__) file option to a TRUE value.
|
||||
.TP 8
|
||||
.B Ctrl+Alt+Keypad-Plus
|
||||
Change video mode to next one specified in the configuration file.
|
||||
Index: xorg-server-1.6.3.901/hw/xfree86/doc/man/xorg.conf.man.pre
|
||||
===================================================================
|
||||
--- 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
|
||||
--- xorg-server-1.7.4/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 @@
|
||||
When this option is enabled, the action has no effect.
|
||||
Default: off.
|
||||
.TP 7
|
||||
|
Loading…
Reference in New Issue
Block a user