[mcclim-cvs] CVS mcclim

afuchs afuchs at common-lisp.net
Thu Mar 9 10:44:28 UTC 2006


Update of /project/mcclim/cvsroot/mcclim
In directory clnet:/tmp/cvs-serv23297

Modified Files:
	recording.lisp 
Log Message:
"This is your brain on PHP". Actually remove deleted cached output
records from the cache hashtable, don't just set their value to NIL.


--- /project/mcclim/cvsroot/mcclim/recording.lisp	2006/03/03 21:10:21	1.122
+++ /project/mcclim/cvsroot/mcclim/recording.lisp	2006/03/09 10:44:28	1.123
@@ -1011,6 +1011,9 @@
 (defun (setf %entry-in-children-cache) (new-val record entry)
   (setf (gethash entry (%tree-record-children-cache record)) new-val))
 
+(defun %remove-entry-from-children-cache (record entry)
+  (remhash entry (%tree-record-children-cache record)))
+
 (defmethod output-record-children ((record standard-tree-output-record))
   (map 'list
        #'tree-output-record-entry-record
@@ -1030,14 +1033,14 @@
    (cond
      ((not (null entry))
       (spatial-trees:delete entry (%tree-record-children record))
-      (setf (%entry-in-children-cache record child) nil)
+      (%remove-entry-from-children-cache record child)
       (setf (output-record-parent child) nil))
      (errorp (error "~S is not a child of ~S" child record)))))
 
 (defmethod clear-output-record ((record standard-tree-output-record))
   (dolist (child (output-record-children record))
     (setf (output-record-parent child) nil)
-    (setf (%entry-in-children-cache record child) nil))
+    (%remove-entry-from-children-cache record child))
   (setf (%tree-record-children record) (%make-tree-output-record-tree)))
 
 (defun map-over-tree-output-records (function record rectangle sort-order function-args)




More information about the Mcclim-cvs mailing list