<div dir="ltr">At commit point d0e7bfa0f8d99b856d9ac563<wbr>72f7dacecdd63106  (5/5/17) Tobias added <div><br></div><div><br></div><p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(62,30,129)"><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)">        </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(112,61,170)">NSEvent</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)">* syntheticEvent = </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(120,73,42)">AUTORELEASEOBJ</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)">([</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(112,61,170)">NSEvent</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)"> </span><span style="font-variant-ligatures:no-common-ligatures">keyEventWithType</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)">:(isUp ? </span><span style="font-variant-ligatures:no-common-ligatures">NSEventTypeKeyUp</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)"> : </span><span style="font-variant-ligatures:no-common-ligatures">NSEventTypeKeyDown</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(0,0,0)">)</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                  </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">location</span><span style="font-variant-ligatures:no-common-ligatures">:[theEvent </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">locationInWindow</span><span style="font-variant-ligatures:no-common-ligatures">]</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                             </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">modifierFlags</span><span style="font-variant-ligatures:no-common-ligatures">:(isUp ? oldFlags : [theEvent </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">modifierFlags</span><span style="font-variant-ligatures:no-common-ligatures">])</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                 </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">timestamp</span><span style="font-variant-ligatures:no-common-ligatures">:[theEvent </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">timestamp</span><span style="font-variant-ligatures:no-common-ligatures">]</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                              </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">windowNumber</span><span style="font-variant-ligatures:no-common-ligatures">:[theEvent </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">windowNumber</span><span style="font-variant-ligatures:no-common-ligatures">]</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                   </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">context</span><span style="font-variant-ligatures:no-common-ligatures">:</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(186,45,162)">nil</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">characters</span><span style="font-variant-ligatures:no-common-ligatures">:</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(209,47,27)">@""</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                               </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">charactersIgnoringModifiers</span><span style="font-variant-ligatures:no-common-ligatures">:</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(209,47,27)">@"<wbr>"</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                 </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">isARepeat</span><span style="font-variant-ligatures:no-common-ligatures">:</span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(186,45,162)">NO</span></p>
<p style="margin:0px;font-size:13px;line-height:normal;font-family:Menlo;color:rgb(0,0,0)"><span style="font-variant-ligatures:no-common-ligatures">                                                                   </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">keyCode</span><span style="font-variant-ligatures:no-common-ligatures">:[theEvent </span><span style="font-variant-ligatures:no-common-ligatures;color:rgb(62,30,129)">keyCode</span><span style="font-variant-ligatures:no-common-ligatures">]]);</span></p><div><br></div><div>in <span style="color:rgb(0,132,0);font-family:Menlo;font-size:13px">sqSqueakOSXOpenGLView.m  at </span><span style="color:rgb(0,0,0);font-family:Menlo;font-size:13px;font-variant-ligatures:no-common-ligatures">- (</span><span style="font-family:Menlo;font-size:13px;font-variant-ligatures:no-common-ligatures;color:rgb(186,45,162)">void</span><span style="color:rgb(0,0,0);font-family:Menlo;font-size:13px;font-variant-ligatures:no-common-ligatures">)flagsChanged:(</span><span style="font-family:Menlo;font-size:13px;font-variant-ligatures:no-common-ligatures;color:rgb(112,61,170)">NSEvent</span><span style="color:rgb(0,0,0);font-family:Menlo;font-size:13px;font-variant-ligatures:no-common-ligatures"> *)theEvent </span> </div><div><div><br></div><div>However I believe this is incorrect as the NSEvent class side method is by the old non-arc memory rules implicitly an autoreleased object, so doing the <span style="color:rgb(120,73,42);font-family:Menlo;font-size:13px">AUTORELEASEOBJ()</span> might cause side effects.  <a href="https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmRules.html" target="_blank">https://developer.apple.com/<wbr>library/content/documentation/<wbr>Cocoa/Conceptual/MemoryMgmt/<wbr>Articles/mmRules.html</a></div></div><div><br></div><div><pre class="m_5140861620519087750gmail-m_-1682247041554693378gmail-declaration" style="font-size:11px;margin-top:0px;margin-bottom:0px;white-space:pre-wrap;color:rgb(0,0,0)">+ (<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSEvent *</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">keyEventWithType:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSEventTyp<wbr>e</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">type</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">location:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSPoint</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">location</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">modifierFlags:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSEventModifier<wbr>Flags</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">flags</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">timestamp:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSTimeInterval</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">time</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">windowNumber:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSInteger</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">wNum</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">context:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSGraphicsContext *</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">unusedPassNil</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">characters:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">NSString *</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">keys</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">charactersIgnoringModifiers:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">N<wbr>SString *</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">ukeys</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">isARepeat:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">BOOL</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">flag</span> <span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-identifier">keyCode:</span>(<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-type">unsigned short</span>)<span class="m_5140861620519087750gmail-m_-1682247041554693378gmail-syntax-param-name">code</span>;</pre><pre class="m_5140861620519087750gmail-m_-1682247041554693378gmail-declaration" style="font-size:11px;margin-top:0px;margin-bottom:0px;white-space:pre-wrap;color:rgb(0,0,0)"><br></pre><pre class="m_5140861620519087750gmail-m_-1682247041554693378gmail-declaration" style="margin-top:0px;margin-bottom:0px"><font face="arial, sans-serif"><span style="white-space:pre-wrap">If Tobias can verify and submit a change we can see if that affects the behaviour we have been observing. Note that I"ve not been able to recreate the problem, but in eyeballing the code this leaps out as suspect. </span></font><font color="#000000"><span style="font-size:11px;white-space:pre-wrap"> </span></font></pre></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, May 28, 2017 at 12:34 PM, Esteban Lorenzano <span dir="ltr"><<a href="mailto:estebanlm@gmail.com" target="_blank">estebanlm@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><div style="word-wrap:break-word"><br><div><blockquote type="cite"><div>On 28 May 2017, at 20:40, John McIntosh <<a href="mailto:johnmci@smalltalkconsulting.com" target="_blank">johnmci@smalltalkconsulting.<wbr>com</a>> wrote:</div><br class="m_385065073887466403Apple-interchange-newline"><div><div dir="ltr">Obviously I have to spend some time today to look at this problem. Do need to know if people are typing just plan english ascii characters, or?  </div></div></blockquote><div><br></div><div>I guess is just plain english ascii chars.</div><div><br></div><div>Esteban</div><br><blockquote type="cite"><div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, May 28, 2017 at 10:02 AM, Nicolas Cellier <span dir="ltr"><<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@<wbr>gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> <br><div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2017-05-28 18:44 GMT+02:00 Eliot Miranda <span dir="ltr"><<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <br><div dir="auto"><div>Hi Nicolas,</div><div><br>On May 25, 2017, at 7:44 AM, Nicolas Cellier <<a href="mailto:nicolas.cellier.aka.nice@gmail.com" target="_blank">nicolas.cellier.aka.nice@gmai<wbr>l.com</a>> wrote:<br><br></div><blockquote type="cite"><div><span></span></div></blockquote><blockquote type="cite"><div><div dir="ltr"><div><div><div><div><div><div>Hi Tudor,<br></div>it seems you type too fast.<br></div>More seriously, if I google some of the apple methods in the stack like for example<br>"bug InputMethodInstanceProcessEven<wbr>tRef_WithCompletionHandler"<br></div>I see quite some many hits indicating that:<br></div>- we are not alone<br></div>- either there are some bug on mac os<br></div><div>- or it's complex to use the frameworks right...<br><br></div><div>Debugging this kind of low level problem is going to be tough...<br></div><div>Probably some advanced objective-C knowledge is required.<br></div></div></div></blockquote><div><br></div><div>is the crash in our event processing code or elsewhere? If elsewhere, where?</div><br></div></blockquote><div><br></div><div>Hi Eliot,<br></div><div>the crash dump provided by Tudor shows:<br><br></div><div>...snip...<br></div><div>32  AppKit                        <wbr>      0x9210cb20 -[NSView interpretKeyEvents:] + 192<br>33  Pharo                         <wbr>      0x0013f55e -[sqSqueakOSXOpenGLView keyDown:] + 310<br>34  AppKit                        <wbr>      0x928614bb -[NSWindow(NSEventRouting) _reallySendEvent:isDelayedEven<wbr>t:] + 5876<br>35  AppKit                        <wbr>      0x9285fa49 -[NSWindow(NSEventRouting) sendEvent:] + 547<br>36  AppKit                        <wbr>      0x926ea6aa -[NSApplication(NSEvent) sendEvent:] + 3418<br>37  Pharo                         <wbr>      0x00137dcb -[SqueakOSXApplication sendEvent:] + 163<br>38  Pharo                         <wbr>      0x001399a4 -[sqSqueakOSXApplication(event<wbr>s) pumpRunLoopEventSendAndSignal:<wbr>] + 115<br>39  Pharo                         <wbr>      0x00139a42 -[sqSqueakOSXApplication(event<wbr>s) pumpRunLoop] + 76<br>40  Pharo                         <wbr>      0x0014188a nativeIoProcessEvents + 208<br>41  Pharo                         <wbr>      0x001418de ioProcessEvents + 35<br>42  Pharo                         <wbr>      0x000d5470 checkForEventsMayContextSwitch + 880<br>43  Pharo                         <wbr>      0x000d6cea ceCheckForInterrupts + 16<br>44  ???                           <wbr>      0x0b0ad09b 0x0 + 185258139<br>45  Pharo                         <wbr>      0x000c31bc interpret + 647<br>46  Pharo                         <wbr>      0x001446ad -[sqSqueakMainApplication runSqueak] + 476<br>47  Foundation                    <wbr>      0x95ac4adb __NSFirePerformWithOrder + 419<br>48  CoreFoundation                <wbr>      0x942811fe __CFRUNLOOP_IS_CALLING_OUT_TO_<wbr>AN_OBSERVER_CALLBACK_FUNCTION_<wbr>_ + 30<br>49  CoreFoundation                <wbr>      0x94281157 __CFRunLoopDoObservers + 391<br>50  CoreFoundation                <wbr>      0x942614a2 __CFRunLoopRun + 1058<br>51  CoreFoundation                <wbr>      0x94260e1a CFRunLoopRunSpecific + 506<br>52  CoreFoundation                <wbr>      0x94260c0b CFRunLoopRunInMode + 123 <br>...<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="auto"><blockquote type="cite"><div><div class="gmail_extra">2017-05-24 22:28 GMT+02:00 Tudor Girba <span dir="ltr"><<a href="mailto:tudor@tudorgirba.com" target="_blank">tudor@tudorgirba.com</a>></span>:<br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> <br>Hi,<br>
<br>
Today I experienced multiple crashes on macOS Sierra.<br>
<br>
These happened during regular programming, mostly while typing code. I attached here the crash dump(s). I believe I heard Phil having the same issue with the stable Pharo VM.<br>
<br>
Does anyone else has the same issue?<br>
<br>
The VM is:<br>
CoInterpreter VMMaker.oscog-eem.2203 uuid: 12d4afae-8498-4e76-8efe-60eba6<wbr>ef4db2 May  2 2017<br>
StackToRegisterMappingCogit VMMaker.oscog-eem.2203 uuid: 12d4afae-8498-4e76-8efe-60eba6<wbr>ef4db2 May  2 2017<br>
VM: 201705021552 <a href="https://github.com/OpenSmalltalk/opensmalltalk-vm.git" rel="noreferrer" target="_blank">https://github.com/OpenSmallta<wbr>lk/opensmalltalk-vm.git</a> $ Date: Tue May 2 08:52:41 2017 -0700 $ Plugins: 201705021552 <a href="https://github.com/OpenSmalltalk/opensmalltalk-vm.git" rel="noreferrer" target="_blank">https://github.com/OpenSmallta<wbr>lk/opensmalltalk-vm.git</a> $<br>
<br>
The Pharo update number is: 60482<br>
<br>
Cheers,<br>
Doru<br>
<br>
--<br>
<a href="http://www.tudorgirba.com/" rel="noreferrer" target="_blank">www.tudorgirba.com</a><br>
<a href="http://www.feenk.com/" rel="noreferrer" target="_blank">www.feenk.com</a><br>
<br>
"From an abstract enough point of view, any two things are similar."<br>
<br>
<br>
<br>
<br></blockquote></div><br></div>
</div></blockquote></div><br></blockquote></div><br></div></div>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="m_385065073887466403gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">==============================<wbr>==============================<wbr>===============<br>John M. McIntosh. Corporate Smalltalk Consulting Ltd <a href="https://www.linkedin.com/in/smalltalk" target="_blank">https://www.linkedin.com/<wbr>in/smalltalk</a><br>==============================<wbr>==============================<wbr>===============<br></div></div></div></div>
</div>
</div></blockquote></div><br></div><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr">===========================================================================<br>John M. McIntosh. Corporate Smalltalk Consulting Ltd <a href="https://www.linkedin.com/in/smalltalk" target="_blank">https://www.linkedin.com/in/smalltalk</a><br>===========================================================================<br></div></div></div></div>
</div>