[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