Fix to working pointer->string implementation on Chicken
This commit is contained in:
parent
bbd51e93e1
commit
51357777d9
|
|
@ -162,16 +162,16 @@
|
||||||
(pffi-define puts #f 'puts 'int (list 'pointer))
|
(pffi-define puts #f 'puts 'int (list 'pointer))
|
||||||
(pffi-define memset #f 'memset 'void (list 'pointer 'int 'int))
|
(pffi-define memset #f 'memset 'void (list 'pointer 'int 'int))
|
||||||
|
|
||||||
#;(define pffi-string->pointer
|
(define pffi-string->pointer
|
||||||
(lambda (string-content)
|
(lambda (string-content)
|
||||||
(let* ((size (string-length string-content))
|
(let* ((size (string-length string-content))
|
||||||
(pointer (pffi-pointer-allocate (+ size 1))))
|
(pointer (pffi-pointer-allocate (+ size 1))))
|
||||||
(memset pointer 0 (+ size 1))
|
(memset pointer 0 (+ size 1))
|
||||||
(strncpy-ps pointer (location string-content) size)
|
(strncpy-ps pointer (location string-content) size)
|
||||||
(puts pointer)
|
;(puts pointer)
|
||||||
pointer)))
|
pointer)))
|
||||||
|
|
||||||
(define pffi-string->pointer
|
#;(define pffi-string->pointer
|
||||||
(foreign-lambda* c-pointer
|
(foreign-lambda* c-pointer
|
||||||
((c-string str))
|
((c-string str))
|
||||||
"C_return((void*)str);"))
|
"C_return((void*)str);"))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue