use Bytes.extend (praise modernity!)

This commit is contained in:
Simon Cruanes 2014-12-16 22:50:47 +01:00
parent 059528257a
commit f229973ee3

View file

@ -49,7 +49,7 @@ let gen_of_array arr =
if !r = Array.length arr then None if !r = Array.length arr then None
else ( else (
let x = arr.(!r) in let x = arr.(!r) in
incr r; incr r;
Some x Some x
) )
@ -123,9 +123,7 @@ let read_all ic =
while true do while true do
(* resize *) (* resize *)
if !len = Bytes.length !buf then ( if !len = Bytes.length !buf then (
let buf' = Bytes.create (2* !len) in buf := Bytes.extend !buf 0 !len;
Bytes.blit !buf 0 buf' 0 !len;
buf := buf'
); );
assert (Bytes.length !buf > !len); assert (Bytes.length !buf > !len);
let n = input ic !buf !len (Bytes.length !buf - !len) in let n = input ic !buf !len (Bytes.length !buf - !len) in