From 9219d2435631b0970ee217cd9cddaec2ee325f0a Mon Sep 17 00:00:00 2001 From: Fabian Date: Sat, 16 Sep 2017 21:29:47 +0200 Subject: [PATCH] Fix CCVector.append_array (empty vector case) --- src/core/CCVector.ml | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/src/core/CCVector.ml b/src/core/CCVector.ml index 05f61ea7..57f5548b 100644 --- a/src/core/CCVector.ml +++ b/src/core/CCVector.ml @@ -205,9 +205,15 @@ let append_seq a seq = let append_array a b = let len_b = Array.length b in - ensure a (a.size + len_b); - Array.blit b 0 a.vec a.size len_b; - a.size <- a.size + len_b + if _empty_array a then ( + a.vec <- Array.copy b; + a.size <- len_b; + ) + else ( + ensure a (a.size + len_b); + Array.blit b 0 a.vec a.size len_b; + a.size <- a.size + len_b + ) (*$T let v1 = init 5 (fun i->i) and v2 = Array.init 5 (fun i->i+5) in \