/[cmucl]/src/code/serve-event.lisp
ViewVC logotype

Diff of /src/code/serve-event.lisp

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.10 by ram, Thu May 23 15:01:57 1991 UTC revision 1.11 by ram, Thu May 23 16:30:20 1991 UTC
# Line 268  Line 268 
268    ;; First, check any X displays for any pending events.    ;; First, check any X displays for any pending events.
269    #+clx    #+clx
270    (dolist (d/h *display-event-handlers*)    (dolist (d/h *display-event-handlers*)
271      (let ((d (car d/h)))      (let* ((d (car d/h))
272               (disp-fd (fd-stream-fd (xlib::display-input-stream d))))
273        (declare (inline member))        (declare (inline member))
274        ;;        ;;
275        ;; If in the *descriptor-handlers*, then we are already waiting for input        ;; If in the *descriptor-handlers*, then we are already waiting for input
276        ;; on that display, and we don't want to do it recursively.        ;; on that display, and we don't want to do it recursively.
277        (when (and (not (member (fd-stream-fd (xlib::display-input-stream d))        (when (and (dolist (hand *descriptor-handlers* t)
278                                *descriptor-handlers*                     (when (and (eql (handler-descriptor hand) disp-fd)
279                                :key #'handler-descriptor))                                (not (eq (handler-function hand)
280                                           #'ext::call-display-event-handler)))
281                         (return nil)))
282                   (xlib::event-listen d))                   (xlib::event-listen d))
283          (handler-bind ((error #'(lambda (condx)          (handler-bind ((error #'(lambda (condx)
284                                    (declare (ignore condx))                                    (declare (ignore condx))
# Line 288  Line 291 
291        (wait-for-event timeout)        (wait-for-event timeout)
292      (declare (type (unsigned-byte 32) readable writeable))      (declare (type (unsigned-byte 32) readable writeable))
293      ;; Now see what it was (if anything)      ;; Now see what it was (if anything)
294      (cond #+nil      (cond ((fixnump value)
           ((eq value server-unique-object)  
            ;; The interrupt handler fired.  
            (grab-message-loop)  
            t)  
           ((fixnump value)  
295             (unless (zerop value)             (unless (zerop value)
296               ;; Check the descriptors.               ;; Check the descriptors.
297               (let ((result nil))               (let ((result nil))

Legend:
Removed from v.1.10  
changed lines
  Added in v.1.11

  ViewVC Help
Powered by ViewVC 1.1.5