~ chicken-core (chicken-5) 5d03418a612b6f3f8c4c540888f00fd07e1f6c93
commit 5d03418a612b6f3f8c4c540888f00fd07e1f6c93 Author: felix <felix@call-with-current-continuation.org> AuthorDate: Mon Mar 24 21:18:47 2025 +0100 Commit: felix <felix@call-with-current-continuation.org> CommitDate: Mon Mar 24 21:18:47 2025 +0100 Save C primitive for bytevector-length did not check for non-atomic datum (reported by wasamasa) diff --git a/runtime.c b/runtime.c index 0efc4f13..e8d747e1 100644 --- a/runtime.c +++ b/runtime.c @@ -5953,7 +5953,7 @@ C_regparm C_word C_i_vector_length(C_word v) C_regparm C_word C_i_bytevector_length(C_word v) { - if(!C_truep(C_bytevectorp(v))) + if(C_immediatep(v) || !C_truep(C_bytevectorp(v))) barf(C_BAD_ARGUMENT_TYPE_ERROR, "bytevector-length", v); return C_fix(C_header_size(v));Trap