diff options
author | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-17 18:09:53 +0100 |
---|---|---|
committer | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-17 18:09:53 +0100 |
commit | 0667c31269d99a7bec708559d84845a69b32dec3 (patch) | |
tree | a9f6341a6c0577bcb65df3231925ee201e06b69b | |
parent | c36553fe8b000e6d2d353aa4f803210f60fa1955 (diff) |
Fix INTERN-LISP-MANAGED-FOREIGN-INSTANCE.
darcs-hash:952721028097b9740e84d6a6d7a4cf43537a1ef5
-rw-r--r-- | Lisp/instance-management.lisp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/Lisp/instance-management.lisp b/Lisp/instance-management.lisp index ab2e0bb..371e78f 100644 --- a/Lisp/instance-management.lisp +++ b/Lisp/instance-management.lisp @@ -23,11 +23,12 @@ (defun intern-lisp-managed-foreign-instance (&rest initargs &key pointer) (let ((key (cffi:pointer-address pointer))) (or (gethash key *lisp-managed-instances* nil) - (apply #'make-instance - (intern-pointer-wrapper - 'class - :pointer (%objcl-object-get-class pointer)) - initargs)))) + (setf (gethash key *lisp-managed-instances*) + (apply #'make-instance + (intern-pointer-wrapper + 'class + :pointer (%objcl-object-get-class pointer)) + initargs))))) (defun unintern-lisp-managed-foreign-instance (instance) (remhash (cffi:pointer-address (pointer-to instance)) |