From 98a2664219df9f0bc7f8fdfb14dcc2e8972782ba Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Tue, 19 Feb 2008 15:30:53 +0100 Subject: Avoid sending messages to potentially unregistered classes. darcs-hash:e57bfdafd5e8690f8e875bf6a5a0a10050b77303 --- Lisp/method-invocation.lisp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'Lisp/method-invocation.lisp') diff --git a/Lisp/method-invocation.lisp b/Lisp/method-invocation.lisp index 8c94ecc..d1412bf 100644 --- a/Lisp/method-invocation.lisp +++ b/Lisp/method-invocation.lisp @@ -322,6 +322,8 @@ easier to use with __apply__. (defun low-level-invoke (receiver selector superclass-pointer-for-send-super return-typestring return-type arg-typestrings arg-types argc args) + (when (object-is-class-p receiver) + (foreign-class-ensure-registered receiver)) (let ((return-c-type (typespec->c-type return-type)) (arg-c-types (mapcar #'typespec->c-type arg-types))) (with-foreign-string-pool (register-temporary-string -- cgit v1.2.3