summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam Nystrom <sam@samnystrom.dev>2023-06-22 23:38:26 -0400
committerSam Nystrom <sam@samnystrom.dev>2023-06-22 23:39:01 -0400
commitd133aaaa58d766dade37502e5c209fd497dbf750 (patch)
treec737658350fba804a25bb2051689f3b01597db2a
parentc39fbde36929be17fbadae319532e3734fef5f45 (diff)
prevent clock underflow
-rw-r--r--main.ha5
1 files changed, 4 insertions, 1 deletions
diff --git a/main.ha b/main.ha
index 6f76eb1..bd3428c 100644
--- a/main.ha
+++ b/main.ha
@@ -144,16 +144,19 @@ export fn main() void = {
continue;
};
let quit = false;
+ let now = time::now(time::clock::REALTIME);
for (let i = 0z; i < len(input); i += 1) {
switch (input[i]) {
case 'q' =>
quit = true;
case 'j' =>
start = time::add(start, time::SECOND * 10);
+ if (time::diff(start, now) < 0) {
+ start = now;
+ };
case 'l' =>
start = time::add(start, -time::SECOND * 10);
case 'k' =>
- let now = time::now(time::clock::REALTIME);
match (pause_start) {
case void =>
pause_start = now;