From 696009d34e86a89e9d455b104173ef1a7161b890 Mon Sep 17 00:00:00 2001 From: Joscha Date: Mon, 13 Dec 2021 19:12:37 +0000 Subject: [PATCH] Fix simple end dates being ignored --- src/eval/command/date.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/eval/command/date.rs b/src/eval/command/date.rs index 4549cf9..f67397e 100644 --- a/src/eval/command/date.rs +++ b/src/eval/command/date.rs @@ -30,6 +30,14 @@ impl From<&commands::DateSpec> for DateSpec { .as_ref() .map(|delta| delta.into()) .unwrap_or_default(); + if let Some(date) = spec.end { + // Strictly speaking, this could be out of range, but that would + // require a delta of about 6 million years. I'm not too worried... + let days = (date.value - spec.start).num_days() as i32; + end_delta + .steps + .insert(0, Spanned::new(date.span, DeltaStep::Day(days))); + } if let Some(time) = spec.end_time { end_delta .steps