Blame SOURCES/xsettings-kde-wakeups.patch

0e7d47
From: Harald Sitter <apachelogger@ubuntu.com>
0e7d47
Subject: Remove pointless sleep()
0e7d47
 The IM support patch from [1], imported into Mageia in [2] adds a
0e7d47
 conditional sleep() call when the infinite loop runs into an empty
0e7d47
 event queue which is bound to happen quite a few times.
0e7d47
 .
0e7d47
 This introduces pointless code and pointless wake ups as the used
0e7d47
 XNextEvent function blocks on an empty queue anyway [3], thus
0e7d47
 rendering the manual sleep() call superfluous.
0e7d47
 .
0e7d47
 [1] https://bugzilla.redhat.com/show_bug.cgi?id=727822
0e7d47
 [2] http://svnweb.mageia.org/soft?view=revision&revision=2011
0e7d47
 [3] http://tronche.com/gui/x/xlib/event-handling/manipulating-event-queue/XNextEvent.html
0e7d47

0e7d47
Index: xsettings-kde-0.12.3/xsettings-kde.c
0e7d47
===================================================================
0e7d47
--- xsettings-kde-0.12.3.orig/xsettings-kde.c	2012-05-22 00:01:21.000000000 +0200
0e7d47
+++ xsettings-kde-0.12.3/xsettings-kde.c	2012-05-22 00:02:25.209293378 +0200
0e7d47
@@ -529,11 +529,7 @@
0e7d47
     int i;
0e7d47
 
0e7d47
     while (1) {
0e7d47
-  if (!XPending(xev->display)) {
0e7d47
-        sleep(2);
0e7d47
-        continue;
0e7d47
-    }
0e7d47
-        XNextEvent (xev->display, &xevent);
0e7d47
+	XNextEvent (xev->display, &xevent);
0e7d47
 
0e7d47
 	for (i = 0 ; i < max_display ; i++) {
0e7d47
 	    if (xsettings_manager_process_event (managers[i], &xevent))