From 2c032c221506841403fd3078641c3bf92535540c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 26 Mar 2015 23:13:47 -0400 Subject: [PATCH] Handle zero-length bytevectors correctly in (system base types). * module/system/base/types.scm (cell->object): Use 'get-bytevector-n' instead of 'get-bytevector-all', so that the zero-length case does not return EOF. --- module/system/base/types.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/module/system/base/types.scm b/module/system/base/types.scm index a1bae6e13..de4ee6999 100644 --- a/module/system/base/types.scm +++ b/module/system/base/types.scm @@ -443,7 +443,7 @@ using BACKEND." ('big "UTF-32BE"))))) (((_ & #x7f = %tc7-bytevector) len address) (let ((bv-port (memory-port backend address len))) - (get-bytevector-all bv-port))) + (get-bytevector-n bv-port len))) ((((len << 7) || %tc7-vector) weakv-data) (let* ((len (arithmetic-shift len -1)) (words (get-bytevector-n port (* len %word-size)))