From 177abaa0c3347e6de9389348cbb06cfe2cc3aa11 Mon Sep 17 00:00:00 2001 Message-Id: <177abaa0c3347e6de9389348cbb06cfe2cc3aa11.1746678031.git.mdw@distorted.org.uk> From: Mark Wooding Date: Mon, 26 Sep 2005 21:27:31 +0000 Subject: [PATCH] Fix for SBCL 9.x Organization: Straylight/Edgeware From: espen --- glib/ffi.lisp | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/glib/ffi.lisp b/glib/ffi.lisp index 5f2fc0c..a6e6b3a 100644 --- a/glib/ffi.lisp +++ b/glib/ffi.lisp @@ -20,7 +20,7 @@ ;; TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE ;; SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -;; $Id: ffi.lisp,v 1.20 2005-04-23 16:48:50 espen Exp $ +;; $Id: ffi.lisp,v 1.21 2005-09-26 21:27:31 espen Exp $ (in-package "GLIB") @@ -189,7 +189,10 @@ (defun mkbinding (name return-type &rest arg-types) (%heap-alien (make-heap-alien-info :type (parse-alien-type ftype #+sbcl nil) - :sap-form (foreign-symbol-address name)))) + :sap-form (let ((address (foreign-symbol-address name))) + (etypecase address + (integer (int-sap address)) + (system-area-pointer address)))))) (translate-arguments (mapcar #'to-alien-function arg-types)) (translate-return-value (from-alien-function return-type)) (cleanup-arguments (mapcar #'cleanup-function arg-types))) -- [mdw]