[polypaudio-commits] r776 - /trunk/src/polypcore/x11wrap.c

svnmailer-noreply at 0pointer.de svnmailer-noreply at 0pointer.de
Sat Apr 22 14:49:31 PDT 2006


Author: lennart
Date: Sat Apr 22 23:49:30 2006
New Revision: 776

URL: http://0pointer.de/cgi-bin/viewcvs.cgi?rev=776&root=polypaudio&view=rev
Log:
fix x11 handling

Modified:
    trunk/src/polypcore/x11wrap.c

Modified: trunk/src/polypcore/x11wrap.c
URL: http://0pointer.de/cgi-bin/viewcvs.cgi/trunk/src/polypcore/x11wrap.c?rev=776&root=polypaudio&r1=775&r2=776&view=diff
==============================================================================
--- trunk/src/polypcore/x11wrap.c (original)
+++ trunk/src/polypcore/x11wrap.c Sat Apr 22 23:49:30 2006
@@ -87,6 +87,9 @@
 static void defer_event(pa_mainloop_api *m, pa_defer_event *e, void *userdata) {
     pa_x11_wrapper *w = userdata;
     assert(m && e && w && w->ref >= 1);
+
+    m->defer_enable(e, 0);
+    
     work(w);
 }
 
@@ -96,6 +99,8 @@
     assert(m && e && fd >= 0 && w && w->ref >= 1);
 
     XProcessInternalConnection(w->display, fd);
+
+    work(w);
 }
 
 /* Add a new IO source for the specified X11 internal connection */
@@ -211,6 +216,10 @@
 
 Display *pa_x11_wrapper_get_display(pa_x11_wrapper *w) {
     assert(w && w->ref >= 1);
+
+    /* Somebody is using us, schedule a output buffer flush */
+    w->core->mainloop->defer_enable(w->defer_event, 1);
+    
     return w->display;
 }
 




More information about the pulseaudio-commits mailing list