From 0880bd6ab8539d43cde12ca556ea46b2ee0f0518 Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Tue, 4 Mar 2008 15:02:43 +0100 Subject: Fix objcl_create_imp. darcs-hash:259fe285f4dde3cb5d6a964593524f7e9619faf4 --- Lisp/libobjcl.lisp | 6 +++--- Lisp/method-definition.lisp | 5 +++-- 2 files changed, 6 insertions(+), 5 deletions(-) (limited to 'Lisp') diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index 394672e..797ee1e 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -45,9 +45,9 @@ (defcfun ("objcl_invoke_with_types" %objcl-invoke-with-types) :pointer (argc :int) (superclass-for-send-super :pointer) - (return_typespec :string) - (arg_typespecs (:array :string)) - (return_value (:pointer :void)) + (return-typespec :string) + (arg-typespecs (:array :string)) + (return-value (:pointer :void)) (argv (:array (:pointer :void)))) (defcfun ("objcl_find_class" %objcl-find-class) :pointer diff --git a/Lisp/method-definition.lisp b/Lisp/method-definition.lisp index 1ed0b9c..187da3c 100644 --- a/Lisp/method-definition.lisp +++ b/Lisp/method-definition.lisp @@ -123,10 +123,11 @@ ,cffi-lambda-list (,(generic-function-name gf) ,@arguments))))) (let ((callback (get-callback callback-name))) - (with-foreign-object (arg-typestring-buffer :string (length arg-typestrings)) + (with-foreign-object (arg-typestring-buffer :string + (- (length arg-typestrings) 2)) (with-foreign-string-pool (register-temp allocate-temp) (loop for i from 0 - for typestring in arg-typestrings + for typestring in (cddr arg-typestrings) do (setf (mem-aref arg-typestring-buffer :string i) (allocate-temp typestring))) (%objcl-add-method (pointer-to class) -- cgit v1.2.3