[xsettings-kde] drop some needless wakeups introduced with Gtk/IMModule support

Rex Dieter rdieter at fedoraproject.org
Mon May 21 23:02:14 UTC 2012


commit 0bdf60423d34b116e275a04a55c3b0faeb03fc72
Author: Rex Dieter <rdieter at fedoraproject.org>
Date:   Mon May 21 18:04:47 2012 -0500

    drop some needless wakeups introduced with Gtk/IMModule support

 xsettings-kde-wakeups.patch |   31 +++++++++++++++++++++++++++++++
 xsettings-kde.spec          |    8 +++++++-
 2 files changed, 38 insertions(+), 1 deletions(-)
---
diff --git a/xsettings-kde-wakeups.patch b/xsettings-kde-wakeups.patch
new file mode 100644
index 0000000..e17d821
--- /dev/null
+++ b/xsettings-kde-wakeups.patch
@@ -0,0 +1,31 @@
+From: Harald Sitter <apachelogger at ubuntu.com>
+Subject: Remove pointless sleep()
+ The IM support patch from [1], imported into Mageia in [2] adds a
+ conditional sleep() call when the infinite loop runs into an empty
+ event queue which is bound to happen quite a few times.
+ .
+ This introduces pointless code and pointless wake ups as the used
+ XNextEvent function blocks on an empty queue anyway [3], thus
+ rendering the manual sleep() call superfluous.
+ .
+ [1] https://bugzilla.redhat.com/show_bug.cgi?id=727822
+ [2] http://svnweb.mageia.org/soft?view=revision&revision=2011
+ [3] http://tronche.com/gui/x/xlib/event-handling/manipulating-event-queue/XNextEvent.html
+
+Index: xsettings-kde-0.12.3/xsettings-kde.c
+===================================================================
+--- xsettings-kde-0.12.3.orig/xsettings-kde.c	2012-05-22 00:01:21.000000000 +0200
++++ xsettings-kde-0.12.3/xsettings-kde.c	2012-05-22 00:02:25.209293378 +0200
+@@ -529,11 +529,7 @@
+     int i;
+ 
+     while (1) {
+-  if (!XPending(xev->display)) {
+-        sleep(2);
+-        continue;
+-    }
+-        XNextEvent (xev->display, &xevent);
++	XNextEvent (xev->display, &xevent);
+ 
+ 	for (i = 0 ; i < max_display ; i++) {
+ 	    if (xsettings_manager_process_event (managers[i], &xevent))
diff --git a/xsettings-kde.spec b/xsettings-kde.spec
index e5947bc..47ac02d 100644
--- a/xsettings-kde.spec
+++ b/xsettings-kde.spec
@@ -2,7 +2,7 @@
 Summary: XSettings Daemon for KDE
 Name:    xsettings-kde
 Version: 0.12.3
-Release: 2%{?dist}.1
+Release: 3%{?dist}
 License: GPLv2+
 Group:   User Interface/Desktops 
 Source0: http://distro.ibiblio.org/pub/linux/distributions/mageia/software/xsettings-kde/%{version}/xsettings-kde-%{version}.tar.bz2 
@@ -17,6 +17,8 @@ Patch1: xsettings-kde-0.9-kde4.patch
 Patch2: xsettings-kde-0.12.3-gtktheme.patch
 
 ## upstreamable patches
+# drop needless spinloop introduced in https://bugzilla.redhat.com/727822
+Patch50: xsettings-kde-wakeups.patch
 
 Source10: xsettings-kde.desktop
 
@@ -35,6 +37,7 @@ default font and so on.
 
 %patch1 -p1 -b .kde4
 %patch2 -p1 -b .gtktheme
+%patch50 -p1 -b .wakeups
 
 
 %build
@@ -63,6 +66,9 @@ rm -rf %{buildroot}
 
 
 %changelog
+* Mon May 21 2012 Rex Dieter <rdieter at fedoraproject.org> 0.12.3-3
+- drop some needless wakeups introduced with Gtk/IMModule support
+
 * Thu Mar 08 2012 Rex Dieter <rdieter at fedoraproject.org> 0.12.3-2.1
 - rebuild (for f16/kde48)
 


More information about the scm-commits mailing list