From beb088a4d62a908bd6dd7c4261ee74d727c52428 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Jul 18 2010 23:06:47 +0000 Subject: * Fri Jul 16 2010 Peter Hutterer 1.8.99.905-1 - xserver 1.8.99.905 - xserver-1.8-entervt.patch: drop, upstream. --- diff --git a/.cvsignore b/.cvsignore index 087709a..7decd59 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1 +1 @@ -xorg-server-20100702.tar.xz +xorg-server-20100716.tar.xz diff --git a/commitid b/commitid index ee09855..dad3ff9 100644 --- a/commitid +++ b/commitid @@ -1 +1 @@ -a71dbc03e65cf7b0654a6eca93ce0bf6a1711ffa +a2c13f0d6548310e3cd115cf486d3e43edf23dcc diff --git a/sources b/sources index d50d642..a938be5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -2b3ef22b08ef2477f7a23213303066e7 xorg-server-20100702.tar.xz +3dfe6f7d8a922d804bca4e3e85415d1c xorg-server-20100716.tar.xz diff --git a/xorg-x11-server.spec b/xorg-x11-server.spec index 50897c5..421af20 100644 --- a/xorg-x11-server.spec +++ b/xorg-x11-server.spec @@ -25,12 +25,12 @@ %define extension_minor 0 %define pkgname xorg-server -%define gitdate 20100702 +%define gitdate 20100716 Summary: X.Org X11 X server Name: xorg-x11-server -Version: 1.8.99.904 -Release: 6%{?gitdate:.%{gitdate}}%{dist} +Version: 1.8.99.905 +Release: 1%{?gitdate:.%{gitdate}}%{dist} URL: http://www.x.org License: MIT Group: User Interface/X @@ -65,8 +65,6 @@ Patch103: xserver-1.5.0-bg-none-root.patch Patch2014: xserver-1.5.0-projector-fb-size.patch -Patch3799: xserver-1.8-entervt.patch - # Trivial things to never merge upstream ever: # This really could be done prettier. Patch5002: xserver-1.4.99-ssh-isnt-local.patch @@ -550,6 +548,10 @@ rm -rf $RPM_BUILD_ROOT %{xserver_source_dir} %changelog +* Fri Jul 16 2010 Peter Hutterer 1.8.99.905-1 +- xserver 1.8.99.905 +- xserver-1.8-entervt.patch: drop, upstream. + * Thu Jul 15 2010 Peter Hutterer 1.8.99.904-6 - xserver-1.8-enter-leave-woes.patch: ignore grabs for enter/leave events (#538462) diff --git a/xserver-1.8-entervt.patch b/xserver-1.8-entervt.patch deleted file mode 100644 index d5c79c8..0000000 --- a/xserver-1.8-entervt.patch +++ /dev/null @@ -1,298 +0,0 @@ -From d75e8146c414bfd512ba5dbd4a83acb334bbe19b Mon Sep 17 00:00:00 2001 -From: Keith Packard -Date: Mon, 12 Jul 2010 16:01:34 -0700 -Subject: [PATCH] Unwrap/rewrap EnterVT/LeaveVT completely, Fixes 28998 - -Because some EnterVT code needs to remove it self from the -call chain, we need to fix all of the wrappers to correctly -unwrap/rewrap during the call chain. This is a follow-on to the fix -for bug 27114 in commit 68a9ee8370e6f9b38218376ac92d5130a5b0ef1e. - -Signed-off-by: Keith Packard -Tested-by: Jesse Barnes -Reviewed-by: Daniel Stone -Reviewed-by: Tiago Vignatti ---- - glx/glxdri.c | 17 +++++++++++++++-- - glx/glxdri2.c | 17 +++++++++++++++-- - hw/xfree86/common/xf86VGAarbiter.c | 10 +++++++++- - hw/xfree86/common/xf86cmap.c | 8 +++++++- - hw/xfree86/common/xf86xv.c | 8 ++++++++ - hw/xfree86/shadowfb/shadow.c | 11 ++++++++++- - hw/xfree86/xaa/xaaInit.c | 12 +++++++++++- - 7 files changed, 75 insertions(+), 8 deletions(-) - -diff --git a/glx/glxdri.c b/glx/glxdri.c -index 32b35db..41482c9 100644 ---- a/glx/glxdri.c -+++ b/glx/glxdri.c -@@ -866,12 +866,21 @@ static const char dri_driver_path[] = DRI_DRIVER_PATH; - static Bool - glxDRIEnterVT (int index, int flags) - { -+ ScrnInfoPtr scrn = xf86Screens[index]; -+ Bool ret; - __GLXDRIscreen *screen = (__GLXDRIscreen *) - glxGetScreen(screenInfo.screens[index]); - - LogMessage(X_INFO, "AIGLX: Resuming AIGLX clients after VT switch\n"); - -- if (!(*screen->enterVT) (index, flags)) -+ scrn->EnterVT = screen->enterVT; -+ -+ ret = scrn->EnterVT (index, flags); -+ -+ screen->enterVT = scrn->EnterVT; -+ scrn->EnterVT = glxDRIEnterVT; -+ -+ if (!ret) - return FALSE; - - glxResumeClients(); -@@ -882,6 +891,7 @@ glxDRIEnterVT (int index, int flags) - static void - glxDRILeaveVT (int index, int flags) - { -+ ScrnInfoPtr scrn = xf86Screens[index]; - __GLXDRIscreen *screen = (__GLXDRIscreen *) - glxGetScreen(screenInfo.screens[index]); - -@@ -889,7 +899,10 @@ glxDRILeaveVT (int index, int flags) - - glxSuspendClients(); - -- return (*screen->leaveVT) (index, flags); -+ scrn->LeaveVT = screen->leaveVT; -+ (*screen->leaveVT) (index, flags); -+ screen->leaveVT = scrn->LeaveVT; -+ scrn->LeaveVT = glxDRILeaveVT; - } - - static void -diff --git a/glx/glxdri2.c b/glx/glxdri2.c -index 970a51a..c2305ad 100644 ---- a/glx/glxdri2.c -+++ b/glx/glxdri2.c -@@ -605,12 +605,21 @@ static const char dri_driver_path[] = DRI_DRIVER_PATH; - static Bool - glxDRIEnterVT (int index, int flags) - { -+ ScrnInfoPtr scrn = xf86Screens[index]; -+ Bool ret; - __GLXDRIscreen *screen = (__GLXDRIscreen *) - glxGetScreen(screenInfo.screens[index]); - - LogMessage(X_INFO, "AIGLX: Resuming AIGLX clients after VT switch\n"); - -- if (!(*screen->enterVT) (index, flags)) -+ scrn->EnterVT = screen->enterVT; -+ -+ ret = scrn->EnterVT (index, flags); -+ -+ screen->enterVT = scrn->EnterVT; -+ scrn->EnterVT = glxDRIEnterVT; -+ -+ if (!ret) - return FALSE; - - glxResumeClients(); -@@ -621,6 +630,7 @@ glxDRIEnterVT (int index, int flags) - static void - glxDRILeaveVT (int index, int flags) - { -+ ScrnInfoPtr scrn = xf86Screens[index]; - __GLXDRIscreen *screen = (__GLXDRIscreen *) - glxGetScreen(screenInfo.screens[index]); - -@@ -628,7 +638,10 @@ glxDRILeaveVT (int index, int flags) - - glxSuspendClients(); - -- return (*screen->leaveVT) (index, flags); -+ scrn->LeaveVT = screen->leaveVT; -+ (*screen->leaveVT) (index, flags); -+ screen->leaveVT = scrn->LeaveVT; -+ scrn->LeaveVT = glxDRILeaveVT; - } - - static void -diff --git a/hw/xfree86/common/xf86VGAarbiter.c b/hw/xfree86/common/xf86VGAarbiter.c -index a58d21a..05cf245 100644 ---- a/hw/xfree86/common/xf86VGAarbiter.c -+++ b/hw/xfree86/common/xf86VGAarbiter.c -@@ -523,12 +523,16 @@ static Bool - VGAarbiterEnterVT(int index, int flags) - { - Bool val; -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; - VGAarbiterScreenPtr pScreenPriv = (VGAarbiterScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, VGAarbiterScreenKey); - - VGAGet(); -- val = (*pScreenPriv->EnterVT)(index, flags); -+ pScrn->EnterVT = pScreenPriv->EnterVT; -+ val = (*pScrn->EnterVT)(index, flags); -+ pScreenPriv->EnterVT = pScrn->EnterVT; -+ pScrn->EnterVT = VGAarbiterEnterVT; - VGAPut(); - return val; - } -@@ -536,12 +540,16 @@ VGAarbiterEnterVT(int index, int flags) - static void - VGAarbiterLeaveVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; - VGAarbiterScreenPtr pScreenPriv = (VGAarbiterScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, VGAarbiterScreenKey); - - VGAGet(); -+ pScrn->LeaveVT = pScreenPriv->LeaveVT; - (*pScreenPriv->LeaveVT)(index, flags); -+ pScreenPriv->LeaveVT = pScrn->LeaveVT; -+ pScrn->LeaveVT = VGAarbiterLeaveVT; - VGAPut(); - } - -diff --git a/hw/xfree86/common/xf86cmap.c b/hw/xfree86/common/xf86cmap.c -index d2a8f12..8b27b84 100644 ---- a/hw/xfree86/common/xf86cmap.c -+++ b/hw/xfree86/common/xf86cmap.c -@@ -466,11 +466,17 @@ CMapInstallColormap(ColormapPtr pmap) - static Bool - CMapEnterVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; -+ Bool ret; - CMapScreenPtr pScreenPriv = (CMapScreenPtr)dixLookupPrivate( - &pScreen->devPrivates, CMapScreenKey); - -- if((*pScreenPriv->EnterVT)(index, flags)) { -+ pScrn->EnterVT = pScreenPriv->EnterVT; -+ ret = (*pScreenPriv->EnterVT)(index, flags); -+ pScreenPriv->EnterVT = pScrn->EnterVT; -+ pScrn->EnterVT = CMapEnterVT; -+ if(ret) { - if(GetInstalledmiColormap(pScreen)) - CMapReinstallMap(GetInstalledmiColormap(pScreen)); - return TRUE; -diff --git a/hw/xfree86/common/xf86xv.c b/hw/xfree86/common/xf86xv.c -index 948f82d..c1d3199 100644 ---- a/hw/xfree86/common/xf86xv.c -+++ b/hw/xfree86/common/xf86xv.c -@@ -1229,11 +1229,15 @@ xf86XVQueryAdaptors( - static Bool - xf86XVEnterVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; - XF86XVScreenPtr ScreenPriv = GET_XF86XV_SCREEN(pScreen); - Bool ret; - -+ pScrn->EnterVT = ScreenPriv->EnterVT; - ret = (*ScreenPriv->EnterVT)(index, flags); -+ ScreenPriv->EnterVT = pScrn->EnterVT; -+ pScrn->EnterVT = xf86XVEnterVT; - - if(ret) WalkTree(pScreen, xf86XVReputAllVideo, 0); - -@@ -1243,6 +1247,7 @@ xf86XVEnterVT(int index, int flags) - static void - xf86XVLeaveVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; - XvScreenPtr pxvs = GET_XV_SCREEN(pScreen); - XF86XVScreenPtr ScreenPriv = GET_XF86XV_SCREEN(pScreen); -@@ -1274,7 +1279,10 @@ xf86XVLeaveVT(int index, int flags) - } - } - -+ pScrn->LeaveVT = ScreenPriv->LeaveVT; - (*ScreenPriv->LeaveVT)(index, flags); -+ ScreenPriv->LeaveVT = pScrn->LeaveVT; -+ pScrn->LeaveVT = xf86XVLeaveVT; - } - - static void -diff --git a/hw/xfree86/shadowfb/shadow.c b/hw/xfree86/shadowfb/shadow.c -index 9773981..344f1ab 100644 ---- a/hw/xfree86/shadowfb/shadow.c -+++ b/hw/xfree86/shadowfb/shadow.c -@@ -216,9 +216,14 @@ static Bool - ShadowEnterVT(int index, int flags) - { - ScrnInfoPtr pScrn = xf86Screens[index]; -+ Bool ret; - ShadowScreenPtr pPriv = GET_SCREEN_PRIVATE(pScrn->pScreen); - -- if((*pPriv->EnterVT)(index, flags)) { -+ pScrn->EnterVT = pPriv->EnterVT; -+ ret = (*pPriv->EnterVT)(index, flags); -+ pPriv->EnterVT = pScrn->EnterVT; -+ pScrn->EnterVT = ShadowEnterVT; -+ if(ret) { - pPriv->vtSema = TRUE; - return TRUE; - } -@@ -229,11 +234,15 @@ ShadowEnterVT(int index, int flags) - static void - ShadowLeaveVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ShadowScreenPtr pPriv = GET_SCREEN_PRIVATE(xf86Screens[index]->pScreen); - - pPriv->vtSema = FALSE; - -+ pScrn->LeaveVT = pPriv->LeaveVT; - (*pPriv->LeaveVT)(index, flags); -+ pPriv->LeaveVT = pScrn->LeaveVT; -+ pScrn->LeaveVT = ShadowLeaveVT; - } - - /**********************************************************/ -diff --git a/hw/xfree86/xaa/xaaInit.c b/hw/xfree86/xaa/xaaInit.c -index ec55632..11443a6 100644 ---- a/hw/xfree86/xaa/xaaInit.c -+++ b/hw/xfree86/xaa/xaaInit.c -@@ -508,16 +508,23 @@ XAAChangeWindowAttributes (WindowPtr pWin, unsigned long mask) - static Bool - XAAEnterVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; -+ Bool ret; - ScreenPtr pScreen = screenInfo.screens[index]; - XAAScreenPtr pScreenPriv = - (XAAScreenPtr)dixLookupPrivate(&pScreen->devPrivates, XAAScreenKey); - -- return((*pScreenPriv->EnterVT)(index, flags)); -+ pScrn->EnterVT = pScreenPriv->EnterVT; -+ ret = ((*pScreenPriv->EnterVT)(index, flags)); -+ pScreenPriv->EnterVT = pScrn->EnterVT; -+ pScrn->EnterVT = XAAEnterVT; -+ return ret; - } - - static void - XAALeaveVT(int index, int flags) - { -+ ScrnInfoPtr pScrn = xf86Screens[index]; - ScreenPtr pScreen = screenInfo.screens[index]; - XAAScreenPtr pScreenPriv = - (XAAScreenPtr)dixLookupPrivate(&pScreen->devPrivates, XAAScreenKey); -@@ -528,7 +535,10 @@ XAALeaveVT(int index, int flags) - infoRec->NeedToSync = FALSE; - } - -+ pScrn->LeaveVT = pScreenPriv->LeaveVT; - (*pScreenPriv->LeaveVT)(index, flags); -+ pScreenPriv->LeaveVT = pScrn->LeaveVT; -+ pScrn->LeaveVT = XAALeaveVT; - } - - typedef struct { --- -1.7.1.1 -