From 59460d1a4877f8b07cc91e045f07eb2c02bb8771 Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Mon, 11 Feb 2008 19:47:27 +0100 Subject: Do not rely on the GC to remove entries of a weak hash table. This patch finally makes Objective-CL not crash consistently on CLISP. darcs-hash:20d392bc8e5203efd20e3c57224c2b1338ecb8d9 --- Lisp/libobjcl.lisp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'Lisp/libobjcl.lisp') diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index 6e8e2f5..aacedab 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -826,7 +826,7 @@ separating parts by hyphens works nicely in all of the `:INVERT`, (let ((array-pointer (%objcl-class-direct-slots class-ptr count-ptr element-size-ptr))) - (unless (null-pointer-p array-pointer) + (unless (zerop (mem-ref count-ptr :unsigned-int)) (unwind-protect (loop with element-size = (mem-ref element-size-ptr :unsigned-int) with count = (mem-ref count-ptr :unsigned-int) -- cgit v1.2.3