wingo pushed a commit to branch wip-whippet in repository guile. commit 18dac263a10e441b3219ee180f602c0d238eb3d8 Author: Andy Wingo <wi...@pobox.com> AuthorDate: Tue Jul 1 15:38:33 2025 +0200
Pin bytevectors passed to bytevector->pointer * libguile/foreign.c (scm_bytevector_to_pointer): Pin bv. --- libguile/foreign.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/libguile/foreign.c b/libguile/foreign.c index 21495b166..4a288d02c 100644 --- a/libguile/foreign.c +++ b/libguile/foreign.c @@ -362,6 +362,8 @@ SCM_DEFINE (scm_bytevector_to_pointer, "bytevector->pointer", 1, 1, 0, : scm_to_unsigned_integer (offset, 0, SCM_BYTEVECTOR_LENGTH (bv) - 1); + scm_gc_pin_object (SCM_I_CURRENT_THREAD, bv); + return make_pointer_1 ((uintptr_t)(ptr + boffset), bv); } #undef FUNC_NAME