Merge branch 'handle-stdout'
[SXSI/xpathcomp.git] / src / cache.ml
index 68cae67..abe113a 100644 (file)
@@ -1,4 +1,3 @@
-
 let realloc l old_size new_size dummy =
   let l' = Array.create new_size dummy in
   for i = 0 to (min old_size new_size) - 1 do
@@ -81,7 +80,7 @@ module Lvl2 =
 struct
   type 'a t = 'a Lvl1.t Lvl1.t
   let create n a =
-    let dummy1 = Lvl1.create 0 a in
+    let dummy1 = Lvl1.create 512 a in
     { Lvl1.line = Array.create n dummy1;
       Lvl1.offset = ~-1;
       Lvl1.dummy = dummy1;
@@ -130,9 +129,9 @@ struct
   let add a i j k v =
     let line = Lvl1.find a i in
     if line == a.Lvl1.dummy then
-      let nline =  { line with Lvl1.offset = ~-1 } in
-      Lvl2.add nline j k v;
-      Lvl1.add a i nline
+      let nline =  Lvl1.create 0 line.Lvl1.dummy in
+      Lvl1.add a i nline;
+      Lvl2.add nline j k v
     else
       Lvl2.add line j k v