in
let pc = if !max_round == 0 then 1. else float_of_int last_round /. float_of_int !max_round in
let scolor, tcolor =
- let { sat ; todo; _ } = List.hd(M.find last_round m) in
- let c = (last_round, sat, todo) in color c, text_color c
+ let { sat ; todo; _ } =
+ match M.find last_round m with
+ [] -> { sat = StateSet.empty; todo= StateSet.empty; msg = "ERROR" }
+ | [ e ] -> e
+ | l -> List.hd (List.tl (List.rev l))
+ in
+ let c = (last_round, StateSet.union sat todo, StateSet.empty) in color c, text_color c
in
let tag = QName.to_string (T.tag tree node) in
let lbox = (String.length tag + 2) * 10 in