diff options
Diffstat (limited to 'xorg-server-hwcursor-gamma')
| -rw-r--r-- | xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch | 84 | ||||
| -rw-r--r-- | xorg-server-hwcursor-gamma/PKGBUILD | 16 | 
2 files changed, 89 insertions, 11 deletions
diff --git a/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch b/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch new file mode 100644 index 0000000..a33840a --- /dev/null +++ b/xorg-server-hwcursor-gamma/0001-linux-Do-not-call-FatalError-from-xf86CloseConsole.patch @@ -0,0 +1,84 @@ +From ca355e9d6acab994453cdbb65cb213d09ee4a50f Mon Sep 17 00:00:00 2001 +From: Hans de Goede <hdegoede@redhat.com> +Date: Wed, 14 Oct 2015 15:10:35 +0200 +Subject: [PATCH] linux: Do not call FatalError from xf86CloseConsole + +FatalError ends up calling xf86CloseConsole itself, so calling FatalError +from within xf86CloseConsole is not a good idea. + +All the other error checking done in xf86CloseConsole uses +xf86Msg(X_WARNING, ...) except for the switch_to() helper function, +change things so that switch_to() also uses xf86Msg rather then FatalError +when called from xf86CloseConsole. + +BugLink: https://bugzilla.redhat.com/show_bug.cgi?id=1269210 +Signed-off-by: Hans de Goede <hdegoede@redhat.com> +--- + hw/xfree86/os-support/linux/lnx_init.c | 24 ++++++++++++++++-------- + 1 file changed, 16 insertions(+), 8 deletions(-) + +diff --git a/hw/xfree86/os-support/linux/lnx_init.c b/hw/xfree86/os-support/linux/lnx_init.c +index ec06a05..9fec964 100644 +--- a/hw/xfree86/os-support/linux/lnx_init.c ++++ b/hw/xfree86/os-support/linux/lnx_init.c +@@ -64,17 +64,25 @@ drain_console(int fd, void *closure) + } +  + static void +-switch_to(int vt, const char *from) ++switch_to(int vt, Bool is_open) + { +     int ret; +  +     SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_ACTIVATE, vt)); +-    if (ret < 0) +-        FatalError("%s: VT_ACTIVATE failed: %s\n", from, strerror(errno)); ++    if (ret < 0) { ++        if (is_open) ++            FatalError("xf86OpenConsole: VT_ACTIVATE failed: %s\n", strerror(errno)); ++        else ++            xf86Msg(X_WARNING, "xf86CloseConsole: VT_ACTIVATE failed: %s\n", strerror(errno)); ++    } +  +     SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_WAITACTIVE, vt)); +-    if (ret < 0) +-        FatalError("%s: VT_WAITACTIVE failed: %s\n", from, strerror(errno)); ++    if (ret < 0) { ++        if (is_open) ++            FatalError("xf86OpenConsole: VT_WAITACTIVE failed: %s\n", strerror(errno)); ++        else ++            xf86Msg(X_WARNING, "xf86CloseConsole: VT_WAITACTIVE failed: %s\n", strerror(errno)); ++    } + } +  + #pragma GCC diagnostic push +@@ -233,7 +241,7 @@ xf86OpenConsole(void) +             /* +              * now get the VT.  This _must_ succeed, or else fail completely. +              */ +-            switch_to(xf86Info.vtno, "xf86OpenConsole"); ++            switch_to(xf86Info.vtno, TRUE); +  +             SYSCALL(ret = ioctl(xf86Info.consoleFd, VT_GETMODE, &VT)); +             if (ret < 0) +@@ -294,7 +302,7 @@ xf86OpenConsole(void) +     else {                      /* serverGeneration != 1 */ +         if (!xf86Info.ShareVTs && xf86Info.autoVTSwitch) { +             /* now get the VT */ +-            switch_to(xf86Info.vtno, "xf86OpenConsole"); ++            switch_to(xf86Info.vtno, TRUE); +         } +     } + } +@@ -346,7 +354,7 @@ xf86CloseConsole(void) +          * Perform a switch back to the active VT when we were started +          */ +         if (activeVT >= 0) { +-            switch_to(activeVT, "xf86CloseConsole"); ++            switch_to(activeVT, FALSE); +             activeVT = -1; +         } +     } +--  +2.5.0 + diff --git a/xorg-server-hwcursor-gamma/PKGBUILD b/xorg-server-hwcursor-gamma/PKGBUILD index 8035ab9..e547481 100644 --- a/xorg-server-hwcursor-gamma/PKGBUILD +++ b/xorg-server-hwcursor-gamma/PKGBUILD @@ -4,8 +4,8 @@  _pkgname=xorg-server  pkgname=xorg-server-hwcursor-gamma -pkgver=1.17.2 -pkgrel=2 +pkgver=1.17.4 +pkgrel=1 # 2 in xorg-server  pkgdesc="Xorg X server with patch to apply gamma ramps on hardware cursors"  depends=(libepoxy libxdmcp libxfont libpciaccess libdrm pixman libgcrypt libxau xorg-server-common xf86-input-evdev libxshmfence libgl)  provides=("xorg-server=${pkgver}" 'X-ABI-VIDEODRV_VERSION=19' 'X-ABI-XINPUT_VERSION=21.1' 'X-ABI-EXTENSION_VERSION=9.0' 'x-server') @@ -27,19 +27,15 @@ source=(${url}/releases/individual/xserver/${_pkgname}-${pkgver}.tar.bz2          xvfb-run.1          0001-dix-Add-unaccelerated-valuators-to-the-ValuatorMask.patch          0002-dix-hook-up-the-unaccelerated-valuator-masks.patch -	0001-glamor-make-current-in-prepare-paths.patch -	0001-os-make-sure-the-clientsWritable-fd_set-is-initializ.patch  	0001-When-an-cursor-is-set-it-is-adjusted-to-use-the.patch  	0002-Fix-for-full-and-semi-transparency-under-negative-im.patch  	0003-Use-Harms-s-suggest-do-not-use-inline-if.-And-fix-si.patch) -sha256sums=('f61120612728f2c5034671d0ca3e2273438c60aba93b3dda4a8aa40e6a257993' +sha256sums=('0c4b45c116a812a996eb432d8508cf26c2ec8c3916ff2a50781796882f8d6457'              'af1c3d2ea5de7f6a6b5f7c60951a189a4749d1495e5462f3157ae7ac8fe1dc56'              'ff0156309470fc1d378fd2e104338020a884295e285972cc88e250e031cc35b9'              '2460adccd3362fefd4cdc5f1c70f332d7b578091fb9167bf88b5f91265bbd776'              '3dc795002b8763a7d29db94f0af200131da9ce5ffc233bfd8916060f83a8fad7'              '416a1422eed71efcebb1d893de74e7f27e408323a56c4df003db37f5673b3f96' -	    '793579adbef979088cadc0fd9ce0c24df0455a6936d3de7a9356df537b7d9a81' -	    'efc05c06af2bfdf588ef7a60b44c1d180fb353b1bffdfdf96415d63690b6e394'  	    'bea348631dedd66475d84ac2cfe0840f22a80a642b4680d73fead4749e47f055'  	    'be9169b937b5d0b44f7f05d7c08aaa5f0c1092e128ce261d9cb350f09dfe1fb0'  	    '0a643ae83e03faee0f4db669a33c5b3c99edbba5c86cde2c83962ae536d31081') @@ -56,10 +52,6 @@ prepare() {    patch -Np1 -i ../0001-dix-Add-unaccelerated-valuators-to-the-ValuatorMask.patch    patch -Np1 -i ../0002-dix-hook-up-the-unaccelerated-valuator-masks.patch -  msg2 "Fix FS#45009, merged upstream" -  patch -Np1 -i ../0001-glamor-make-current-in-prepare-paths.patch -  patch -Np1 -i ../0001-os-make-sure-the-clientsWritable-fd_set-is-initializ.patch -      autoreconf -fvi  } @@ -137,4 +129,6 @@ package() {    rm -rf "${pkgdir}/usr/lib/pkgconfig"    rm -rf "${pkgdir}/usr/include"    rm -rf "${pkgdir}/usr/share/aclocal" +  # this is now part of xorg-input-evdev +  rm -rf "${pkgdir}/usr/share/X11/xorg.conf.d/10-evdev.conf"  }  | 
