v1.0.42: fix duplicate timer race across different buttons

pendingKeyDown was a Set keyed by action.id, so it only blocked a
button from re-firing itself. Pressing two different buttons in fast
succession (e.g. RB01 then RA01) both passed the guard, both read
memRunningActionId before either had persisted it, and both started
a Notion timer entry. Replaced with a single keyDownBusy flag shared
across all buttons of the action, set synchronously before the first
await, closing the race.
This commit is contained in:
pdmarf
2026-08-25 15:42:43 +01:00
parent ce1a17975d
commit 18f8007df5
4 changed files with 15 additions and 13 deletions
@@ -1,2 +1 @@
ג /}‚ֿ‘I]�“v¶₪6ִ®[cV”+�הש™>f&6�$
ת¹ת«b;�׀�אר»@פִb}©ע&X ␍
HeÒ¾à�¡21™ßC'Ý—ÿ9ƒx¤,$2&úöö¡rÅYËb’L¸ËeìÉ.ËQ:¶þõub;B™¢&