Do not unconditionally flush the current formatting in logger.
[SXSI/xpathcomp.git] / src / utils.ml
index 2cb3c41..0efe748 100644 (file)
@@ -82,30 +82,29 @@ module Timing =
            om, nm))
           (infinity, 0., 0., 0, h, h) l
       in
-      Logger.verbose fmt "@[%s%s: [" sub msg;
-      Format.pp_open_vbox fmt (2 + String.length msg + String.length sub);
-      if len <= 1 then
-      Logger.verbose fmt
-        "@\n\
-| Time        :   %fms@\n\
-| Memory before:  %a@\n\
-| Memory after:   %a@\n]@]@]@\n"
-        tmin
-        System.pr_mem_status memo
-        System.pr_mem_status memn
+      Logger.verbose fmt "@[%s%s: @[<v 0>[" sub msg;
+      begin
+        if len <= 1 then
+        Logger.verbose fmt
+          "@\n\
+| Time        :   %fms@\n"
+          tmin
       else
-      Logger.verbose fmt
-        "@\n\
+        Logger.verbose fmt
+          "@\n\
 | Number of runs: %i@\n\
 | Average time:   %fms@\n\
 | Minimum time:   %fms@\n\
-| Maximum time:   %fms@\n\
-| Memory before:  %a@\n\
-| Memory after:   %a@\n]@]@]@\n"
-        len
-        (ttotal /. (float_of_int len))
-        tmin
-        tmax
+| Maximum time:   %fms@\n"
+          len
+          (ttotal /. (float_of_int len))
+          tmin
+          tmax
+
+      end;
+      Logger.verbose fmt
+"| Memory before:  %a@\n\
+| Memory after:   %a@\n]@]@]@\n@?"
         System.pr_mem_status memo
         System.pr_mem_status memn