summaryrefslogtreecommitdiff
path: root/Lisp/method-invocation.lisp
diff options
context:
space:
mode:
Diffstat (limited to 'Lisp/method-invocation.lisp')
-rw-r--r--Lisp/method-invocation.lisp4
1 files changed, 3 insertions, 1 deletions
diff --git a/Lisp/method-invocation.lisp b/Lisp/method-invocation.lisp
index a0a426b..08e0dac 100644
--- a/Lisp/method-invocation.lisp
+++ b/Lisp/method-invocation.lisp
@@ -285,7 +285,9 @@ easier to use with __apply__.
(* ,num +pessimistic-allocation-size+))))
(flet ((ad-hoc-arglist->objc-arglist! (args)
(setf (argref '(:pointer :void) 0)
- (pointer-to receiver)
+ (if (pointerp receiver)
+ receiver
+ (pointer-to receiver))
(argref '(:pointer :void) 1)
(pointer-to selector))
(loop for arg in args