[lxpanel] Fix annoying crash of the taskbar (#587430)

Christoph Wickert cwickert at fedoraproject.org
Mon Nov 26 00:03:17 UTC 2012


commit f5b8eda98f5c70b3272b47f8942a2c138865fbe5
Author: Christoph Wickert <cwickert at fedoraproject.org>
Date:   Mon Nov 26 01:03:07 2012 +0100

    Fix annoying crash of the taskbar (#587430)

 ...el-0.5-10-taskbar-segfault-fix-ID-3573069.patch |   43 ++++++++++++++++++++
 lxpanel.spec                                       |   17 ++++++--
 2 files changed, 56 insertions(+), 4 deletions(-)
---
diff --git a/lxpanel-0.5-10-taskbar-segfault-fix-ID-3573069.patch b/lxpanel-0.5-10-taskbar-segfault-fix-ID-3573069.patch
new file mode 100644
index 0000000..b8881d1
--- /dev/null
+++ b/lxpanel-0.5-10-taskbar-segfault-fix-ID-3573069.patch
@@ -0,0 +1,43 @@
+From 3a02bd072ad5130d7457ea0bc3160a94c99027c1 Mon Sep 17 00:00:00 2001
+From: Bastiaan Jacques <bjacq at users.sourceforge.net>
+Date: Sat, 29 Sep 2012 17:37:54 -0400
+Subject: [PATCH 86/89] taskbar: segfault fix - ID: 3573069
+
+http://sourceforge.net/tracker/?func=detail&atid=894871&aid=3573069&group_id=180858
+
+prevent segfault, zero out callback
+
+This is my attempt to fix the segmentation fault with crashing function
+flash_window_timeout reported here:
+https://bugzilla.redhat.com/show_bug.cgi?id=587430
+
+In various places in taskbar.c there is logic depending the timeout
+callback pointer being 'active' when it is not zero. In one instance
+(the one being address with the attached patch) the callback is
+unregistered but not zeroed out.
+
+This patch appears to prevent the segfault and also prevent excessive
+flashing that Firefox exhibits in lxpanel.
+---
+ src/plugins/taskbar.c | 4 +++-
+ 1 file changed, 3 insertions(+), 1 deletion(-)
+
+diff --git a/src/plugins/taskbar.c b/src/plugins/taskbar.c
+index baf6281..ed8d618 100644
+--- a/src/plugins/taskbar.c
++++ b/src/plugins/taskbar.c
+@@ -553,8 +553,10 @@ static void task_delete(TaskbarPlugin * tb, Task * tk, gboolean unlink)
+         tb->focused = NULL;
+ 
+     /* If there is an urgency timeout, remove it. */
+-    if (tk->flash_timeout != 0)
++    if (tk->flash_timeout != 0) {
+         g_source_remove(tk->flash_timeout);
++        tk->flash_timeout = 0;
++    }
+ 
+     /* Deallocate structures. */
+     icon_grid_remove(tb->icon_grid, tk->button);
+-- 
+1.7.11.7
+
diff --git a/lxpanel.spec b/lxpanel.spec
index e47ffd6..b905d54 100644
--- a/lxpanel.spec
+++ b/lxpanel.spec
@@ -2,21 +2,26 @@
 
 Name:           lxpanel
 Version:        0.5.10
-Release:        2%{?dist}
+Release:        3%{?dist}
 Summary:        A lightweight X11 desktop panel
 
 Group:          User Interface/Desktops
 License:        GPLv2+
 URL:            http://lxde.org/
-#VCS: git:git://lxde.git.sourceforge.net/gitroot/lxde/lxinput
+#VCS: git:git://lxde.git.sourceforge.net/gitroot/lxde/lxpanel
 Source0:        http://downloads.sourceforge.net/sourceforge/lxde/%{name}-%{version}.tar.gz
 
-# https://bugzilla.redhat.com/show_bug.cgi?id=564746
+# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=564746
 Patch0:         lxpanel-0.5.9-dsofix.patch
 
-# https://bugzilla.redhat.com/show_bug.cgi?id=746063
+# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=746063
 Patch1:         lxpanel-0.5.6-Fix-pager-scroll.patch
 
+# Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=587430
+# Upstream bug: https://sourceforge.net/tracker/index.php?func=detail&aid=3573069&group_id=180858&atid=894871
+# Patch: http://lxde.git.sourceforge.net/git/gitweb.cgi?p=lxde/lxpanel;a=commit;h=3a02bd0
+Patch2:         lxpanel-0.5-10-taskbar-segfault-fix-ID-3573069.patch
+
 ## distro specific patches
 # default configuration
 Patch100:       lxpanel-0.5.9-default.patch
@@ -60,6 +65,7 @@ developing applications that use %{name}.
 %setup -q
 %patch0 -p1 -b .dsofix
 %patch1 -p1 -b .revert
+%patch2 -p1 -b .taskbar-segfault
 
 %patch100 -p1 -b .default
 %patch101 -p1 -b .system-config-network
@@ -94,6 +100,9 @@ rm -rf $RPM_BUILD_ROOT
 %{_libdir}/pkgconfig/lxpanel.pc
 
 %changelog
+* Sun Nov 25 2012 Christoph Wickert <cwickert at fedoraproject.org> - 0.5.10-3
+- Fix annoying crash of the taskbar (#587430)
+
 * Thu Jul 19 2012 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 0.5.10-2
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
 


More information about the scm-commits mailing list