summaryrefslogtreecommitdiff
path: root/Lisp/class-definition.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'Lisp/class-definition.lisp')
-rw-r--r--Lisp/class-definition.lisp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Lisp/class-definition.lisp b/Lisp/class-definition.lisp
index ff091a9..6ecb189 100644
--- a/Lisp/class-definition.lisp
+++ b/Lisp/class-definition.lisp
@@ -340,7 +340,7 @@
(defmethod make-instance :before ((class objective-c-class)
&key
&allow-other-keys)
- (unless (typep class 'objective-c-meta-class)
+ (unless (subtypep class 'objective-c-meta-class)
(foreign-class-ensure-registered class)))
@@ -348,6 +348,7 @@
(with-exclusive-access (class)
(unless (foreign-class-registered-p class)
(setf (foreign-class-registered-p class) t)
+ (%objcl-finalise-class (pointer-to (class-of class)))
(%objcl-finalise-class (pointer-to class))))
class)