-
Notifications
You must be signed in to change notification settings - Fork 5
Event callbacks are processed in LIFO order given a backlog of messages #78
Copy link
Copy link
Open
Description
Log of Rs and Ts:
08:27.194 R: #2: {"Event":{"EventName":"KeyPress","ID":"F1.E","EventID":"b8ae1f33-0fe2-4798-ad71-0fbd950bf842","Info":["f",102,70,0]}}
08:27.311 R: #2: {"Event":{"EventName":"KeyPress","ID":"F1.E","EventID":"2d359cc6-289d-4ae1-a896-0fc935903ac9","Info":["l",108,76,0]}}
08:27.553 R: #2: {"Event":{"EventName":"KeyPress","ID":"F1.E","EventID":"f93c8db8-7abc-4aff-a161-91897149590b","Info":["i",105,73,0]}}
08:27.658 R: #2: {"Event":{"EventName":"KeyPress","ID":"F1.E","EventID":"89c92073-7e7c-44fc-a73d-abdb0533625d","Info":["p",112,80,0]}}
08:28.228 T: #2: {"EC":{"EventID":"b8ae1f33-0fe2-4798-ad71-0fbd950bf842","Proceed":1}}
08:29.252 T: #2: {"EC":{"EventID":"89c92073-7e7c-44fc-a73d-abdb0533625d","Proceed":1}}
08:30.279 T: #2: {"EC":{"EventID":"f93c8db8-7abc-4aff-a161-91897149590b","Proceed":1}}
08:31.301 T: #2: {"EC":{"EventID":"2d359cc6-289d-4ae1-a896-0fc935903ac9","Proceed":1}}
Repro is simply:
'F1'eWC'Form'
'F1.E'eWC'Edit'('Posn' 10 10)('Size' 12 100)('Event' 'KeyPress' 'CBKP')
where CBKP is just a ⎕DL 1 and nothing else.
The messages for the word 'flip' arrive in order (EventIDs starting with) b8, 2d, f9, 89 but Proceeds are issued in the order b8, 89, f9, 2d. While the first one is in its callback waiting on the DL, the others form a backlog.
I believe they must be in the same order? If not, then I believe the client needs to be smarter on this front.
Tested on both main and fix-65-dq.
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels