Subject: bug#11447: 24.1.50; notifications-notify eats keystrokes

From: Michael Albinus <[email-masked]>
Date: Fri, 11 May 2012 16:10:54 +0200

Stefan Monnier <[email-masked]> writes:

>>       (with-timeout ((if timeout (/ timeout 1000.0) 25))
>>         (while (eq (gethash key dbus-return-values-table :ignore) :ignore)
>> ! 	(let ((event (let (unread-command-events) (read-event nil nil 0.1))))
>> ! 	  (when (and event (not (ignore-errors (dbus-check-event event))))
>> ! 	    (setq unread-command-events
>> ! 		  (append unread-command-events (list event)))))))
>   
> Shouldn't this code use input-pending-p instead?

Maybe, but I don't know how. I've tried this:

    (with-timeout ((if timeout (/ timeout 1000.0) 25))
      (while (eq (gethash key dbus-return-values-table :ignore) :ignore)
      (or (input-pending-p) (sit-for 0.1 'nodisp))))

With the example in this bug report, I get blocked then. A key might be
placed in `unread-command-events', and I still must handle it.

What do I miss?

>         Stefan

Best regards, Michael.