diff --git a/tools/analysis/trace-tools/src/bin/trace-dump.rs b/tools/analysis/trace-tools/src/bin/trace-dump.rs index 66ea3a6688..af77b164e2 100644 --- a/tools/analysis/trace-tools/src/bin/trace-dump.rs +++ b/tools/analysis/trace-tools/src/bin/trace-dump.rs @@ -38,10 +38,15 @@ fn main() -> Result<(), Box> { // TODO: make that optional let unique_timestamps = { - let mut last = 0; - move |ts: Timestamp| { - let ts = if ts == last { ts + 1 } else { ts }; - last = ts; + // We make the timestamp unique assuming it will be manipulated as an f64 by consumers + let mut last = 0.0; + move |mut ts: Timestamp| { + let mut _ts = ts as f64; + while _ts == last { + ts = ts + 1; + _ts = ts as f64; + } + last = _ts; ts } };