浏览代码

minor fix in timers

Nicolas Cannasse 15 年之前
父节点
当前提交
f6cd7a64dd
共有 1 个文件被更改,包括 4 次插入7 次删除
  1. 4 7
      common.ml

+ 4 - 7
common.ml

@@ -161,17 +161,14 @@ let new_timer name =
 		Hashtbl.add htimers name t;
 		Hashtbl.add htimers name t;
 		t
 		t
 
 
-let curtime = ref None
+let curtime = ref []
 
 
 let timer name =
 let timer name =
 	let t = new_timer name in
 	let t = new_timer name in
-	let old = !curtime in
-	curtime := Some t;
+	curtime := t :: !curtime;
 	(function() ->
 	(function() ->
 		let dt = get_time() -. t.start in
 		let dt = get_time() -. t.start in
 		t.total <- t.total +. dt;
 		t.total <- t.total +. dt;
-		curtime := old;
-		match !curtime with
-		| None -> ()
-		| Some ct -> ct.start <- ct.start +. dt
+		curtime := List.tl !curtime;
+		List.iter (fun ct -> ct.start <- ct.start +. dt) !curtime
 	)
 	)