diff --git a/src/main.rs b/src/main.rs index c6581ab..308f2ce 100644 --- a/src/main.rs +++ b/src/main.rs @@ -79,20 +79,25 @@ fn log(f: &String, since: &Option) -> Result<(), String> { curr.d = 0; } let d = match curr.xs.len() { + 0 if x.x.len() == 0 => 0, 0 => 1, _ => ((tsheet.xs[i].t - tsheet.xs[i-1].t + 60*30) / (60*60)) as u8, }; curr.t = x.timestamp(); curr.xs.push(LogX{d: d, x: x.x.clone()}); - curr.d += d; } if curr.xs.len() > 0 { result.push(curr.clone()); } + for i in result.iter_mut() { + i.d = i.xs.iter().map(|x| x.d).sum(); + } for log in result { for x in log.xs { - println!("{} ({}) {} ({})", log.t, log.d, x.x, x.d); + if x.x.len() > 0 { + println!("{} ({}) {} ({})", log.t, log.d, x.x, x.d); + } } } Ok(())