# HG changeset patch # User Mark # Date 1385307484 -3600 # Sun Nov 24 16:38:04 2013 +0100 # Node ID d20e81e4cc9063533478462eec28e79d7c892415 # Parent c3f906e98c4c58a21281ae5c2e206714254d3c8d Fix MAKE-FUNCTION-POINTER for abcl-1.2.1 with jna-4.0.0. *ENCODING* contains the encoding to be used for converting strings between Java and FFI, by default set to "UTF-8". diff -r c3f906e98c4c -r d20e81e4cc90 src/cffi-abcl.lisp --- a/src/cffi-abcl.lisp Sun Nov 24 01:07:02 2013 +0000 +++ b/src/cffi-abcl.lisp Sun Nov 24 16:38:04 2013 +0100 @@ -396,12 +396,17 @@ (:stdcall "ALT_CONVENTION") (:cdecl "C_CONVENTION"))) +(defparameter *encoding* "UTF-8" + "Encoding for conversion between Java and native strings.") + (defun make-function-pointer (pointer convention) +;;; c.f. (jnew (private-jconstructor "com.sun.jna.Function" - "com.sun.jna.Pointer" "int") + "com.sun.jna.Pointer" "int" "java.lang.String") pointer (jfield "com.sun.jna.Function" - (convert-calling-convention convention)))) + (convert-calling-convention convention)) + *encoding*)) (defun lisp-value-to-java (value foreign-type) (if (eq foreign-type :pointer)