diff options
author | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2005-09-12 00:47:03 +0000 |
---|---|---|
committer | Miguel Freitas <miguelfreitas@users.sourceforge.net> | 2005-09-12 00:47:03 +0000 |
commit | 7ab3a9ffdb889c57dfc4b73b8bf26ebb8d1dc5b8 (patch) | |
tree | 0c2958309a849b5b18bd8b9486ffb6ad6d996db3 | |
parent | 5403fb7a68093ad609aada2902e900d69cd465cd (diff) | |
download | xine-lib-7ab3a9ffdb889c57dfc4b73b8bf26ebb8d1dc5b8.tar.gz xine-lib-7ab3a9ffdb889c57dfc4b73b8bf26ebb8d1dc5b8.tar.bz2 |
try Jason Tackaberry suggestion to fix problem of the growing X event
queue with increased CPU load (that is, some events were never dequeued)
CVS patchset: 7729
CVS date: 2005/09/12 00:47:03
-rw-r--r-- | doc/hackersguide/library.sgml | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/doc/hackersguide/library.sgml b/doc/hackersguide/library.sgml index 07aaf3cc0..1d987d259 100644 --- a/doc/hackersguide/library.sgml +++ b/doc/hackersguide/library.sgml @@ -264,14 +264,16 @@ int main(int argc, char **argv) { XEvent xevent; int got_event; - xine_usec_sleep(20000); - XLockDisplay(display); - got_event = XCheckMaskEvent(display, INPUT_MOTION, &xevent); + got_event = XPending(display); + if( got_event ) + XNextEvent(display, &xevent); XUnlockDisplay(display); - if( !got_event ) + if( !got_event ) { + xine_usec_sleep(20000); continue; + } switch(xevent.type) { |