summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Nystrom <sam@samnystrom.dev>2023-06-23 01:12:44 -0400
committerSam Nystrom <sam@samnystrom.dev>2023-06-23 01:12:44 -0400
commitc89770e17a73040b14723e510d62a1527b75b130 (patch)
tree162e1f2051e8a1ed9eb7216c5119f20148119f0a
parent7c45c6d14154470037dac9dfc6d601a32787feb7 (diff)
prevent clock underflow while paused
-rw-r--r--main.ha11
1 files changed, 9 insertions, 2 deletions
diff --git a/main.ha b/main.ha
index 4fd5ba5..f2c571f 100644
--- a/main.ha
+++ b/main.ha
@@ -163,8 +163,15 @@ export fn main() void = {
quit = true;
case 'j' =>
start = time::add(start, time::SECOND * 10);
- if (time::diff(start, now) < 0) {
- start = now;
+ match (pause_start) {
+ case void =>
+ if (time::diff(start, now) < 0) {
+ start = now;
+ };
+ case let inst: time::instant =>
+ if (time::diff(start, inst) < 0) {
+ start = inst;
+ };
};
case 'l' =>
start = time::add(start, -time::SECOND * 10);