/[cmucl]/src/clx/clx.lisp
ViewVC logotype

Diff of /src/clx/clx.lisp

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

revision 1.15 by fgilham, Tue Aug 21 15:49:27 2007 UTC revision 1.16 by rtoy, Wed Jun 17 18:22:45 2009 UTC
# Line 829  Line 829 
829    (getf (font-properties font) name))    (getf (font-properties font) name))
830    
831  (macrolet ((make-mumble-equal (type)  (macrolet ((make-mumble-equal (type)
832               ;; When cached, EQ works fine, otherwise test resource id's and displays               ;; Since caching is only done for objects created by the
833                 ;; client, we must always compare ID and display for
834                 ;; non-identical mumbles.
835               (let ((predicate (xintern type '-equal))               (let ((predicate (xintern type '-equal))
836                     (id (xintern type '-id))                     (id (xintern type '-id))
837                     (dpy (xintern type '-display)))                     (dpy (xintern type '-display)))
838                 (if (member type +clx-cached-types+)                  `(within-definition (,type make-mumble-equal)
839                     `(within-definition (,type make-mumble-equal)                     (defun ,predicate (a b)
840                        (declaim (inline ,predicate))                       (declare (type ,type a b))
841                        (defun ,predicate (a b) (eq a b)))                       (or (eql a b)
842                     `(within-definition (,type make-mumble-equal)                           (and (= (,id a) (,id b))
843                        (defun ,predicate (a b)                                (eq (,dpy a) (,dpy b)))))))))
                         (declare (type ,type a b))  
                         (and (= (,id a) (,id b))  
                              (eq (,dpy a) (,dpy b)))))))))  
844    (make-mumble-equal window)    (make-mumble-equal window)
845    (make-mumble-equal pixmap)    (make-mumble-equal pixmap)
846    (make-mumble-equal cursor)    (make-mumble-equal cursor)

Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

  ViewVC Help
Powered by ViewVC 1.1.5