Join GitHub today
GitHub is home to over 31 million developers working together to host and review code, manage projects, and build software together.Sign up
Keyboard events incorrectly delivered to Graphics module's polling routines when compiled natively #4485
Original bug ID: 4485
Keyboard events and other X events are delivered only after a mouse click in the sample application below. This behaviour is only observed when compiled natively.
The issue is related to the delivery of signals. When polling, SIGIO is not delivered in a timely fashion to its handler. Adding the following lines to the start of the function otherlibs/graph/events.c#caml_gr_wait_event_poll fixes the issue by forcing signal delivery.
OCaml: 3.10.1 (also tested on 3.9.2)
Steps to reproduce:
Sample code (test.ml):
let main () =
Key = a
Mouse at xxx,yyy