You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/app-admin/conky/files/conky-1.10.7-out_to_x-segfa...

50 lines
1.7 KiB

From 562c7375883445acb58388ff16d9eb126b7e12a1 Mon Sep 17 00:00:00 2001
From: Brenden Matthews <brenden@diddyinc.com>
Date: Tue, 23 Jan 2018 13:52:11 -0500
Subject: [PATCH] Fix segfault when out_to_x = false. (#455)
This resolves #454.
---
src/conky.cc | 24 ++++++++++++++----------
1 file changed, 14 insertions(+), 10 deletions(-)
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());