branch: externals/xelb
commit 35a055dfc825fec0101e2730d655aaecc930f193
Author: Chris Feng <chris.w.f...@gmail.com>
Commit: Chris Feng <chris.w.f...@gmail.com>

    Ignore errors from event handlers
    
    * xcb.el (xcb:-connection-filter): Ignore errors from event handlers to
      prevent them from freezing XELB.
---
 xcb.el |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/xcb.el b/xcb.el
index 38619ae..68d4b8d 100644
--- a/xcb.el
+++ b/xcb.el
@@ -315,7 +315,8 @@ Concurrency is disabled as it breaks the orders of errors, 
replies and events."
               (setq data (aref event 1)
                     synthetic (aref event 2))
               (dolist (listener (aref event 0))
-                (funcall listener data synthetic))))
+                (with-demoted-errors "[XELB ERROR] %S"
+                  (funcall listener data synthetic)))))
           (cl-decf event-lock))))))
 
 (cl-defmethod xcb:disconnect ((obj xcb:connection))

Reply via email to