chiark
/
gitweb
/
~mdw
/
clg
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
bd35929
)
Fix for SBCL 9.x
author
espen
<espen>
Mon, 26 Sep 2005 21:27:31 +0000
(21:27 +0000)
committer
espen
<espen>
Mon, 26 Sep 2005 21:27:31 +0000
(21:27 +0000)
glib/ffi.lisp
patch
|
blob
|
blame
|
history
diff --git
a/glib/ffi.lisp
b/glib/ffi.lisp
index 5f2fc0cd5ecbab4ca2e1bf264602965174dacae2..a6e6b3a4f01f157793a47909798841b9abd7a443 100644
(file)
--- 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.
;; 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.2
0 2005-04-23 16:48:50
espen Exp $
+;; $Id: ffi.lisp,v 1.2
1 2005-09-26 21:27:31
espen Exp $
(in-package "GLIB")
(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)
(%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)))
(translate-arguments (mapcar #'to-alien-function arg-types))
(translate-return-value (from-alien-function return-type))
(cleanup-arguments (mapcar #'cleanup-function arg-types)))