diff options
author | Matthias Benkard <code@mail.matthias.benkard.de> | 2007-09-23 03:23:01 +0200 |
---|---|---|
committer | Matthias Benkard <code@mail.matthias.benkard.de> | 2007-09-23 03:23:01 +0200 |
commit | 0544272da832227ad04ae1a48c478a166e81077d (patch) | |
tree | 6cd047f1737c31361b32ae58370ed25776e509ab /Lisp/libobjcl.lisp | |
parent | 7765ad52e00034edd23bb09bade83d8b282f8040 (diff) |
Make memory management a lot saner.
darcs-hash:274be9f0ed5fa33e5e883d7b3df57f00c567e777
Diffstat (limited to 'Lisp/libobjcl.lisp')
-rw-r--r-- | Lisp/libobjcl.lisp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index d2f3e3c..9d8a6be 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -206,10 +206,10 @@ conventional case for namespace identifiers in Objective C." (let ((class-ptr (%objcl-find-class class-name))) (if (cffi:null-pointer-p class-ptr) nil - #-openmcl (make-instance 'objc-class :pointer class-ptr) - #+openmcl (change-class (make-instance 'c-pointer-wrapper - :pointer value) - 'objc-class)))) + #-(or t openmcl) (make-pointer-wrapper 'objc-class :pointer class-ptr) + #+(and nil openmcl) (change-class (make-pointer-wrapper 'c-pointer-wrapper + :pointer value) + 'objc-class)))) (declaim (ftype (function (string) (or null selector)) @@ -218,7 +218,7 @@ conventional case for namespace identifiers in Objective C." (let ((selector-ptr (%objcl-find-selector selector-name))) (if (cffi:null-pointer-p selector-ptr) nil - (make-instance 'selector :pointer selector-ptr)))) + (make-pointer-wrapper 'selector :pointer selector-ptr)))) (declaim (ftype (function ((or objc-class id exception)) string) @@ -306,11 +306,11 @@ by which __invoke__ converts its arguments into a *message name*. (%objcl-object-is-meta-class (pointer-to obj))) (defun object-get-class (obj) - (make-instance 'objc-class + (make-pointer-wrapper 'objc-class :pointer (%objcl-object-get-class (pointer-to obj)))) (defun object-get-meta-class (obj) - (make-instance 'objc-meta-class + (make-pointer-wrapper 'objc-meta-class :pointer (%objcl-object-get-meta-class (pointer-to obj)) :meta-class-for-class (object-get-class obj))) |