VM Crash on Mac with Input Method ([Vm-dev] Re: [squeak-dev] RFB)

Yoshiki Ohshima Yoshiki.Ohshima at acm.org
Sat Sep 17 04:22:39 UTC 2016

On Fri, Sep 16, 2016 at 3:13 PM, Yoshiki Ohshima
<Yoshiki.Ohshima at acm.org> wrote:
>> - (void) ioGetNextEvent: (sqInputEvent *) evt {
>> ioProcessEvents();
>> id event = [eventQueue returnAndRemoveOldest];
>> if (event) {
>> @autoreleasepool {
>>             [self processAsOldEventOrComplexEvent: event placeIn: evt];
>>         }
>>         RELEASEOBJ(event);
>> }
>> }

If I may elaborate my hypothesis, which has not been fully formulated:

- When sqSqueakOSXApplication receives a keyboard event under the
presence of an InputMethod, the InputMethod, which presumably runs in
a separate thread, also gets the event.  For a control key such as
tab, the InputMethod passes through it to  sqSqueakOSXApplication
again, and may be that causes some race condition.

Or, simply,

- in the ioGetNextEvent: the event is held by the InputMethod after
the processAsOldEventOrComplexEvent returned, and then the tab key is

Or, it is somewhat totally different.

I'm sorry that I am just scratching the surface of the problem.
Please let me know if there are more I can do to help.

-- Yoshiki

More information about the Vm-dev mailing list