Date: Tuesday, January 23, 2018 @ 19:29:35 Author: bisson Revision: 315321
proper upstream fix rather than revert Added: conky/trunk/out_to_x.patch Modified: conky/trunk/PKGBUILD Deleted: conky/trunk/mouse.patch ----------------+ PKGBUILD | 8 ++--- mouse.patch | 86 ------------------------------------------------------- out_to_x.patch | 48 ++++++++++++++++++++++++++++++ 3 files changed, 52 insertions(+), 90 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-01-23 18:52:12 UTC (rev 315320) +++ PKGBUILD 2018-01-23 19:29:35 UTC (rev 315321) @@ -6,7 +6,7 @@ pkgname=conky pkgver=1.10.7 -pkgrel=1 +pkgrel=2 pkgdesc='Lightweight system monitor for X' url='https://github.com/brndnmtthws/conky' license=('BSD' 'GPL') @@ -15,10 +15,10 @@ depends=('glib2' 'lua' 'wireless_tools' 'libxdamage' 'libxinerama' 'libxft' 'imlib2' 'libxml2' 'libpulse') source=("https://github.com/brndnmtthws/conky/archive/v${pkgver}.tar.gz" - 'mouse.patch' + 'out_to_x.patch' 'lua53.patch') sha256sums=('23bb9609c522f248cba287146943a872cc045b45cecfa5668bca76e95ecc06ac' - '9c323485e130d253b9e68af4880eed6bcc4ce8866b216224aaf550a31f4bb63c' + '0bf5851f9b7a4c8c40970a658625a72969f1f0b205c61ce2fc5295ebcc9ca847' '16516bdae848f85be949185746418fa5810d426e1f25b6dbbcefdbf4a0b8e6f3') options=('!strip' 'debug') @@ -26,7 +26,7 @@ prepare() { cd "${srcdir}/${pkgname}-${pkgver}" patch -p1 -i ../lua53.patch # lua_gettable returns an int in lua-5.3 - patch -p1 -i ../mouse.patch --reverse # https://github.com/brndnmtthws/conky/issues/454 + patch -p1 -i ../out_to_x.patch } build() { Deleted: mouse.patch =================================================================== --- mouse.patch 2018-01-23 18:52:12 UTC (rev 315320) +++ mouse.patch 2018-01-23 19:29:35 UTC (rev 315321) @@ -1,86 +0,0 @@ -From d97f4dfd8a4f395ef65abfd67d5a758aadb46042 Mon Sep 17 00:00:00 2001 -From: Alexey Korop <[email protected]> -Date: Fri, 19 Jan 2018 16:12:08 +0200 -Subject: [PATCH] Make mouse-through workable (#213) - ---- - src/conky.cc | 18 ++++++++++++++++++ - src/x11.cc | 22 ---------------------- - 2 files changed, 18 insertions(+), 22 deletions(-) - -diff --git a/src/conky.cc b/src/conky.cc -index b483af33..7163d776 100644 ---- a/src/conky.cc -+++ b/src/conky.cc -@@ -60,6 +60,9 @@ - #ifdef BUILD_IMLIB2 - #include "imlib2.h" - #endif /* BUILD_IMLIB2 */ -+#ifdef BUILD_XSHAPE -+#include <X11/extensions/shape.h> -+#endif /* BUILD_XSHAPE */ - #endif /* BUILD_X11 */ - #ifdef BUILD_NCURSES - #include <ncurses.h> -@@ -2070,6 +2073,21 @@ static void main_loop(void) - sigaddset(&newmask, SIGUSR1); - #endif - -+#ifdef BUILD_XSHAPE -+ /* allow only decorated windows to be given mouse input */ -+ int major_version, minor_version; -+ if (!XShapeQueryVersion(display, &major_version, &minor_version)) { -+ NORM_ERR("Input shapes are not supported"); -+ } else { -+ if (own_window.get(*state) && -+ (own_window_type.get(*state) != TYPE_NORMAL || -+ (TEST_HINT(own_window_hints.get(*state), HINT_UNDECORATED)))) { -+ XShapeCombineRectangles(display, window.window, ShapeInput, 0, 0, -+ NULL, 0, ShapeSet, Unsorted); -+ } -+ } -+#endif /* BUILD_XSHAPE */ -+ - last_update_time = 0.0; - next_update_time = get_time() - fmod(get_time(), active_update_interval()); - info.looped = 0; -diff --git a/src/x11.cc b/src/x11.cc -index 216fe22e..c245c25d 100644 ---- a/src/x11.cc -+++ b/src/x11.cc -@@ -47,10 +47,6 @@ - #ifdef BUILD_XFT - #include <X11/Xft/Xft.h> - #endif --#ifdef BUILD_XSHAPE --#include <X11/extensions/shape.h> --#include <X11/extensions/shapeconst.h> --#endif - #ifdef BUILD_XINERAMA - #include <X11/extensions/Xinerama.h> - #endif -@@ -771,24 +767,6 @@ static void init_window(lua::state &l __attribute__((unused)), bool own) - /* allow decorated windows to be given input focus by WM */ - wmHint.input = - TEST_HINT(hints, HINT_UNDECORATED) ? False : True; --#ifdef BUILD_XSHAPE -- if (!wmHint.input) { -- int event_base, error_base; -- if (XShapeQueryExtension(display, &event_base, &error_base)) { -- int major_version = 0, minor_version = 0; -- XShapeQueryVersion(display, &major_version, &minor_version); -- if ((major_version > 1) || ((major_version == 1) && (minor_version >=1))) { -- Region empty_region = XCreateRegion(); -- XShapeCombineRegion(display, window.window, ShapeInput, 0, 0, empty_region, ShapeSet); -- XDestroyRegion(empty_region); -- } else { -- NORM_ERR("Input shapes are not supported"); -- } -- } else { -- NORM_ERR("No shape extension found"); -- } -- } --#endif - if (own_window_type.get(l) == TYPE_DOCK || own_window_type.get(l) == TYPE_PANEL) { - wmHint.initial_state = WithdrawnState; - } else { Added: out_to_x.patch =================================================================== --- out_to_x.patch (rev 0) +++ out_to_x.patch 2018-01-23 19:29:35 UTC (rev 315321) @@ -0,0 +1,48 @@ +commit 562c7375883445acb58388ff16d9eb126b7e12a1 +Author: Brenden Matthews <[email protected]> +Date: Tue Jan 23 13:52:11 2018 -0500 + + Fix segfault when out_to_x = false. (#455) + + This resolves #454. + +diff --git a/src/conky.cc b/src/conky.cc +index 48256ecc..f10d08fb 100644 +--- a/src/conky.cc ++++ b/src/conky.cc +@@ -2076,20 +2076,24 @@ static void main_loop(void) + sigaddset(&newmask, SIGUSR1); + #endif + ++#ifdef BUILD_X11 + #ifdef BUILD_XSHAPE +- /* allow only decorated windows to be given mouse input */ +- int major_version, minor_version; +- if (!XShapeQueryVersion(display, &major_version, &minor_version)) { +- NORM_ERR("Input shapes are not supported"); +- } else { +- if (own_window.get(*state) && +- (own_window_type.get(*state) != TYPE_NORMAL || +- (TEST_HINT(own_window_hints.get(*state), HINT_UNDECORATED)))) { +- XShapeCombineRectangles(display, window.window, ShapeInput, 0, 0, +- NULL, 0, ShapeSet, Unsorted); ++ if (out_to_x.get(*state)) { ++ /* allow only decorated windows to be given mouse input */ ++ int major_version, minor_version; ++ if (!XShapeQueryVersion(display, &major_version, &minor_version)) { ++ NORM_ERR("Input shapes are not supported"); ++ } else { ++ if (own_window.get(*state) && ++ (own_window_type.get(*state) != TYPE_NORMAL || ++ (TEST_HINT(own_window_hints.get(*state), HINT_UNDECORATED)))) { ++ XShapeCombineRectangles(display, window.window, ShapeInput, 0, 0, ++ NULL, 0, ShapeSet, Unsorted); ++ } + } + } + #endif /* BUILD_XSHAPE */ ++#endif /* BUILD_X11 */ + + last_update_time = 0.0; + next_update_time = get_time() - fmod(get_time(), active_update_interval()); +
