Ensure that a package object is used as the hash-key for tests and tags DB.
authorThomas M. Hermann <thomas.m.hermann@odonata-research.com>
Thu, 18 Apr 2013 19:34:47 +0000 (18 14:34 -0500)
committerThomas M. Hermann <thomas.m.hermann@odonata-research.com>
Thu, 18 Apr 2013 19:34:47 +0000 (18 14:34 -0500)
lisp-unit.lisp

index 869a8ab..392dc43 100644 (file)
@@ -168,11 +168,12 @@ assertion.")
   (:report null-tests-warning-report))
 
 (defun package-table (package &optional create)
-  (cond
-   ((gethash (find-package package) *test-db*))
-   (create
-    (setf (gethash package *test-db*) (make-hash-table)))
-   (t (warn 'null-tests-warning :name (package-name package)))))
+  (let ((packobj (find-package package)))
+    (cond
+     ((gethash packobj *test-db*))
+     (create
+      (setf (gethash packobj *test-db*) (make-hash-table)))
+     (t (warn 'null-tests-warning :name (package-name package))))))
 
 (defmacro with-package-table ((table
                                &optional (package *package*) create)
@@ -202,11 +203,12 @@ assertion.")
 
 (defun package-tags (package &optional create)
   "Return the tags DB for the package."
-  (cond
-   ((gethash (find-package package) *tag-db*))
-   (create
-    (setf (gethash package *tag-db*) (make-hash-table)))
-   (t (warn 'null-tags-warning :name (package-name package)))))
+  (let ((packobj (find-package package)))
+    (cond
+     ((gethash packobj *tag-db*))
+     (create
+      (setf (gethash packobj *tag-db*) (make-hash-table)))
+     (t (warn 'null-tags-warning :name (package-name package))))))
 
 (defmacro with-package-tags ((table
                               &optional (package *package*) create)