mirror of
https://codeberg.org/cage/tinmop/
synced 2025-03-03 10:07:36 +01:00
- prevented a condition variable to be awaken even if condition is not actually met.
This commit is contained in:
parent
18110dbd42
commit
1234936175
@ -258,7 +258,7 @@
|
|||||||
(with-accessors ((lock lock)
|
(with-accessors ((lock lock)
|
||||||
(condition-variable condition-variable)) object
|
(condition-variable condition-variable)) object
|
||||||
(setf (command-window:echo-character specials:*command-window*)
|
(setf (command-window:echo-character specials:*command-window*)
|
||||||
nil)
|
:completed)
|
||||||
(with-lock (lock)
|
(with-lock (lock)
|
||||||
(bt:condition-notify condition-variable))))
|
(bt:condition-notify condition-variable))))
|
||||||
|
|
||||||
|
@ -229,7 +229,12 @@
|
|||||||
(condition-variable condition-variable)) event
|
(condition-variable condition-variable)) event
|
||||||
(push-event event)
|
(push-event event)
|
||||||
(with-lock (lock)
|
(with-lock (lock)
|
||||||
(bt:condition-wait condition-variable lock)
|
(loop
|
||||||
|
while (not (eq (command-window:echo-character *command-window*)
|
||||||
|
:completed))
|
||||||
|
do
|
||||||
|
(bt:condition-wait condition-variable lock))
|
||||||
|
(setf (command-window:echo-character *command-window*) nil)
|
||||||
(funcall on-input-complete-fn (box:dunbox (payload event))))))))
|
(funcall on-input-complete-fn (box:dunbox (payload event))))))))
|
||||||
(bt:make-thread #'thread-fn)))
|
(bt:make-thread #'thread-fn)))
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user