OSProcess crashes VM on 5.1 on Raspberry Pi

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

OSProcess crashes VM on 5.1 on Raspberry Pi

Herbert König
Hi,

on my Raspi A+ I run the 5.0 allInOne with OSProcess and CommandShell. I
try to port to the shiny new 5.1.

Very early in my app i do:

ExternalUnixOSProcess command: 'pkill raspistill' ; raspistill not running.

This gives me the attached crash dump. in 5.0 I used OSProcess-dtl.95
and CommandShell-dtl.76.

After my first crash I updated to the latest I found on Squeaksource, 99
and 83 resp.

On lines 238 and 261 the dump says Stack overflow.

Any ideas how to proceed?

Cheers,

Herbert






crash.dmp (13K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess crashes VM on 5.1 on Raspberry Pi

David T. Lewis
The OSProcess plugin has been modified in the Cog/Spur VMs, and the
modified version is broken. The solution is to use the unmodified version,
which is VMConstruction-Plugins-OSProcessPlugin-dtl.40.mcz in the
http://www.squeaksource.com/OSProcessPlugin repository.

I am attaching a copy of the compiled OSProcess plugin from my Raspberry Pi.
No guarantees, but if you unpack this and copy it to your VM directory, it
should work.

Dave


On Sat, Aug 27, 2016 at 02:04:27PM +0200, Herbert K??nig wrote:

> Hi,
>
> on my Raspi A+ I run the 5.0 allInOne with OSProcess and CommandShell. I
> try to port to the shiny new 5.1.
>
> Very early in my app i do:
>
> ExternalUnixOSProcess command: 'pkill raspistill' ; raspistill not running.
>
> This gives me the attached crash dump. in 5.0 I used OSProcess-dtl.95
> and CommandShell-dtl.76.
>
> After my first crash I updated to the latest I found on Squeaksource, 99
> and 83 resp.
>
> On lines 238 and 261 the dump says Stack overflow.
>
> Any ideas how to proceed?
>
> Cheers,
>
> Herbert
>
>
>

>
> Segmentation fault Sat Aug 27 13:44:20 2016
>
>
> /home/pi/Desktop/Squeak5_1PictureAnalyze/bin/squeak
> Squeak VM version: 5.0-201608171728  Wed Aug 17 19:29:47 UTC 2016 gcc 4.9.2 [Production Spur VM]
> Built from: CoInterpreter VMMaker.oscog-cb.1919 uuid: 00a8dd2a-bc8d-4552-b400-be781c8aabec Aug 17 2016
> With: StackToRegisterMappingCogit VMMaker.oscog-cb.1919 uuid: 00a8dd2a-bc8d-4552-b400-be781c8aabec Aug 17 2016
> Revision: VM: 201608171728 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $ Date: Wed Aug 17 10:28:01 2016 -0700 $
> Plugins: 201608171728 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
> Build host: Linux testing-gce-65a3e8a3-406d-4e8d-9606-fb64a9951919 3.19.0-66-generic #74~14.04.1-Ubuntu SMP Tue Jul 19 19:56:11 UTC 2016 armv7l GNU/Linux
> plugin path: /home/pi/Desktop/Squeak5_1PictureAnalyze/bin/ [default: /home/pi/Desktop/Squeak5_1PictureAnalyze/bin/]
>
>
> C stack backtrace & registers:
> r0 0x000422c0 r1 0x00000000 r2 0x00000016 r3 0xb5c81500
> r4 0x000422c0 r5 0xb5cc377c r6 0xb5c8144c r7 0xb5c6dc20
> r8 0x00207250 r9 0xbe8b26fc r10 0x13000000 fp 0xbe8a5984
> ip 0xb5c81324 sp 0xbe8a58a0 lr 0xb6c53810 pc 0xb5c6cc2c
> *[0x0]
> [0x0]
>
>
> Smalltalk stack dump:
> 0xbe8b26fc I UnixOSProcessAccessor>forkAndExec:stdIn:stdOut:stdErr:argBuf:argOffsets:envBuf:envOffsets:workingDir: 0x23b74d0: a(n) UnixOSProcessAccessor
> 0xbe8b2778 I UnixProcess>processProxy:forkAndExec:arguments:environment:descriptors: 0x30ad748: a(n) UnixProcess
> 0xbe8b27ac I ExternalUnixOSProcess>forkChild 0xf33628: a(n) ExternalUnixOSProcess
> 0xbe8b27cc I ExternalUnixOSProcess class>forkAndExec:arguments:environment: 0x2df3310: a(n) ExternalUnixOSProcess class
> 0xbe8b27f8 I ExternalUnixOSProcess class>command: 0x2df3310: a(n) ExternalUnixOSProcess class
> 0xbe8b281c I PictureCompare>killTimelapse 0x34161b0: a(n) PictureCompare
> 0xbe8b2840 I PictureCompare>waitKillTimelapse 0x34161b0: a(n) PictureCompare
> 0xbe8b2884 I PictureCompare>analyzeCameraQuarter 0x34161b0: a(n) PictureCompare
> 0xbe8b289c M PictureCompare>(nil) 0x34161b0: a(n) PictureCompare
> 0xbe8b28c8 I Compiler>evaluateCue:ifFail: 0xe66008: a(n) Compiler
> 0xbe8b28f4 I Compiler>evaluateCue:ifFail:logged: 0xe66008: a(n) Compiler
> 0xbe8b2924 I Compiler>evaluate:in:to:notifying:ifFail:logged: 0xe66008: a(n) Compiler
> 0xbe8b295c M [] in SmalltalkEditor(TextEditor)>evaluateSelectionAndDo: 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8b2978 M BlockClosure>on:do: 0xe661a0: a(n) BlockClosure
> 0xbe8af6d4 M SmalltalkEditor(TextEditor)>evaluateSelectionAndDo: 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af6f8 I SmalltalkEditor(TextEditor)>evaluateSelection 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af718 I SmalltalkEditor(TextEditor)>doIt 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af730 M SmalltalkEditor(TextEditor)>doIt: 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af75c I SmalltalkEditor(TextEditor)>dispatchOnKeyboardEvent: 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af780 I SmalltalkEditor(TextEditor)>keyStroke: 0x2dfbbb8: a(n) SmalltalkEditor
> 0xbe8af7a0 M [] in TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af7c4 M TextMorphForEditView(TextMorph)>handleInteraction:fromEvent: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af7ec I TextMorphForEditView>handleInteraction:fromEvent: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af814 M [] in TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af834 I StandardToolSet class>codeCompletionAround:textMorph:keyStroke: 0x1714200: a(n) StandardToolSet class
> 0xbe8af860 I ToolSet class>codeCompletionAround:textMorph:keyStroke: 0x170f7f8: a(n) ToolSet class
> 0xbe8af884 M TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af8ac I TextMorphForEditView>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af8d4 I TextMorphForEditView(Morph)>handleKeystroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af8fc I TextMorphForEditView(TextMorph)>handleKeystroke: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af918 M KeyboardEvent>sentTo: 0xe65d60: a(n) KeyboardEvent
> 0xbe8af938 M TextMorphForEditView(Morph)>handleEvent: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af954 M TextMorphForEditView(Morph)>handleFocusEvent: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8af978 M MorphicEventDispatcher>doHandlingForFocusEvent:with: 0xe657e8: a(n) MorphicEventDispatcher
> 0xbe8ae67c M MorphicEventDispatcher>dispatchFocusEvent:with: 0xe657e8: a(n) MorphicEventDispatcher
> 0xbe8ae69c M TextMorphForEditView(Morph)>processFocusEvent:using: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8ae6bc M TextMorphForEditView(Morph)>processFocusEvent: 0x341ffd8: a(n) TextMorphForEditView
> 0xbe8ae6e4 M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
> 0xbe8ae704 M BlockClosure>ensure: 0xe65868: a(n) BlockClosure
> 0xbe8ae724 M KeyboardEvent(MorphicEvent)>becomeActiveDuring: 0xe65018: a(n) KeyboardEvent
> 0xbe8ae74c M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
> 0xbe8ae76c M BlockClosure>ensure: 0xe65960: a(n) BlockClosure
> 0xbe8ae78c M HandMorph>becomeActiveDuring: 0x1c46458: a(n) HandMorph
> 0xbe8ae7b4 M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
> 0xbe8ae7d4 M BlockClosure>ensure: 0xe65a58: a(n) BlockClosure
> 0xbe8ae7f4 M PasteUpMorph>becomeActiveDuring: 0x1838780: a(n) PasteUpMorph
> 0xbe8ae818 M HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
> 0xbe8ae844 M HandMorph>sendEvent:focus:clear: 0x1c46458: a(n) HandMorph
> 0xbe8ae868 M HandMorph>sendKeyboardEvent: 0x1c46458: a(n) HandMorph
> 0xbe8ae888 M HandMorph>handleEvent: 0x1c46458: a(n) HandMorph
> 0xbe8ae8b4 M HandMorph>processEvents 0x1c46458: a(n) HandMorph
> 0xbe8ae8d0 M [] in WorldState>doOneCycleNowFor: 0x227ba70: a(n) WorldState
> 0xbe8ae8f4 M Array(SequenceableCollection)>do: 0x13cfa10: a(n) Array
> 0xbe8ae910 M WorldState>handsDo: 0x227ba70: a(n) WorldState
> 0xbe8ae930 M WorldState>doOneCycleNowFor: 0x227ba70: a(n) WorldState
> 0xbe8ae94c M WorldState>doOneCycleFor: 0x227ba70: a(n) WorldState
> 0xbe8ae968 M PasteUpMorph>doOneCycle 0x1838780: a(n) PasteUpMorph
> 0xbe8ae980 M [] in MorphicProject>spawnNewProcess 0x23ca268: a(n) MorphicProject
>  0x17c6208 s [] in BlockClosure>newProcess
>
> Most recent primitives
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> scanBitLengths:into:
> bitPosition
> fixedBlockSizeFor:and:
> fixedBlockSizeFor:and:
> maxCode
> maxCode
> maxCode
> maxCode
> maxCode
> maxCode
> maxCode
> dynamicBlockSizeFor:and:using:and:
> dynamicBlockSizeFor:and:using:and:
> dynamicBlockSizeFor:and:using:and:
> +
> +
> bitLengthAt:
> bitLengthAt:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> nextBits:put:
> nextBits:put:
> at:
> nextBytePut:
> flushBits
> bitXor:
> growTo:
> growTo:
> growTo:
> growTo:
> growTo:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> size
> replaceFrom:to:with:startingAt:
> size
> size
> size
> initialPC
> size
> at:
> at:
> at:
> perform:
> size
> newMethod:header:
> at:put:
> at:put:
> at:put:
> literalAt:
> objectAt:put:
> objectAt:put:
> objectAt:put:
> at:
> at:put:
> at:
> at:put:
> at:
> at:put:
> withArgs:executeMethod:
> basicNew
> basicNew
> value
> basicNew
> size
> size
> size
> replaceFrom:to:with:startingAt:
> size
> replaceFrom:to:with:startingAt:
> value:value:
> value:value:
> value:value:
> indexOfAscii:inString:startingAt:
> value:value:
> value:value:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> basicNew
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> primOpen:writable:
> shallowCopy
> identityHash
> wait
> **StackOverflow**
> identityHash
> basicNew:
> at:put:
> basicNew
> new:
> signal
> species
> basicNew:
> printString
> printString
> printString
> primWrite:from:startingAt:count:
> nextPutAll:
> basicNew
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> =
> at:
> at:
> basicNew
> ~=
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> primLookupEntryIn:name:
> at:
> at:
> at:
> at:
> at:
> basicNew
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> indexOfAscii:inString:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> fileNamed:
> identityHash
> wait
> **StackOverflow**
> identityHash
> basicNew:
> new:
> signal
> basicNew:
> primWrite:from:startingAt:count:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> indexOfAscii:inString:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> primOpen:writable:
> identityHash
> wait
> **StackOverflow**
> identityHash
> basicNew:
> new:
> signal
> basicNew:
> primClose:
> wait
> remove:ifAbsent:
> \\
> at:
> identityHash
> signal
> stringHash:initialHash:
> stringHash:initialHash:
> value:
> identityHash
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> value:value:
> =
> beginsWith:
> beginsWith:
> beginsWith:
> beginsWith:
> setPathName:
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> getSystemAttribute:
> findFirstInString:inSet:startingAt:
> directoryEntryForName:
> directoryEntryForName:
> directoryEntryForName:
> directoryEntryForName:
> directoryEntryForName:
> directoryEntryForName:
> basicNew
> getSystemAttribute:
> basicNew
> basicNew
> identityHash
> primGetCurrentWorkingDirectory
> value:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> value:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> primSizeOfPointer
> value:
>
> sizeOfPointer
> value
> value
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> replaceFrom:to:with:startingAt:
> new:
> collect:
> at:
> value:value:
> value:value:
> at:
> value:value:
> at:
> value:value:
> replaceFrom:to:with:startingAt:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> primGetCurrentWorkingDirectory
> compare:with:collated:
> primForkExec:stdIn:stdOut:stdErr:argBuf:argOffsets:envBuf:envOffsets:workingDir:
>
> stack page bytes 4096 available headroom 2788 minimum unused headroom 2996
>
> (Segmentation fault)

>




OSPP.tar.gz (56K) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: OSProcess crashes VM on 5.1 on Raspberry Pi

Herbert König

Hi Dave,

thanks a lot that did it.

Herbert

Am 27.08.2016 um 16:23 schrieb David T. Lewis:
The OSProcess plugin has been modified in the Cog/Spur VMs, and the
modified version is broken. The solution is to use the unmodified version,
which is VMConstruction-Plugins-OSProcessPlugin-dtl.40.mcz in the
http://www.squeaksource.com/OSProcessPlugin repository.

I am attaching a copy of the compiled OSProcess plugin from my Raspberry Pi.
No guarantees, but if you unpack this and copy it to your VM directory, it
should work.

Dave


On Sat, Aug 27, 2016 at 02:04:27PM +0200, Herbert K??nig wrote:
Hi,

on my Raspi A+ I run the 5.0 allInOne with OSProcess and CommandShell. I 
try to port to the shiny new 5.1.

Very early in my app i do:

ExternalUnixOSProcess command: 'pkill raspistill' ; raspistill not running.

This gives me the attached crash dump. in 5.0 I used OSProcess-dtl.95 
and CommandShell-dtl.76.

After my first crash I updated to the latest I found on Squeaksource, 99 
and 83 resp.

On lines 238 and 261 the dump says Stack overflow.

Any ideas how to proceed?

Cheers,

Herbert




      
Segmentation fault Sat Aug 27 13:44:20 2016


/home/pi/Desktop/Squeak5_1PictureAnalyze/bin/squeak
Squeak VM version: 5.0-201608171728  Wed Aug 17 19:29:47 UTC 2016 gcc 4.9.2 [Production Spur VM]
Built from: CoInterpreter VMMaker.oscog-cb.1919 uuid: 00a8dd2a-bc8d-4552-b400-be781c8aabec Aug 17 2016
With: StackToRegisterMappingCogit VMMaker.oscog-cb.1919 uuid: 00a8dd2a-bc8d-4552-b400-be781c8aabec Aug 17 2016
Revision: VM: 201608171728 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $ Date: Wed Aug 17 10:28:01 2016 -0700 $
Plugins: 201608171728 https://github.com/OpenSmalltalk/opensmalltalk-vm.git $
Build host: Linux testing-gce-65a3e8a3-406d-4e8d-9606-fb64a9951919 3.19.0-66-generic #74~14.04.1-Ubuntu SMP Tue Jul 19 19:56:11 UTC 2016 armv7l GNU/Linux
plugin path: /home/pi/Desktop/Squeak5_1PictureAnalyze/bin/ [default: /home/pi/Desktop/Squeak5_1PictureAnalyze/bin/]


C stack backtrace & registers:
	 r0 0x000422c0 r1 0x00000000 r2 0x00000016 r3 0xb5c81500
	 r4 0x000422c0 r5 0xb5cc377c r6 0xb5c8144c r7 0xb5c6dc20
	 r8 0x00207250 r9 0xbe8b26fc r10 0x13000000 fp 0xbe8a5984
	 ip 0xb5c81324 sp 0xbe8a58a0 lr 0xb6c53810 pc 0xb5c6cc2c
*[0x0]
[0x0]


Smalltalk stack dump:
0xbe8b26fc I UnixOSProcessAccessor>forkAndExec:stdIn:stdOut:stdErr:argBuf:argOffsets:envBuf:envOffsets:workingDir: 0x23b74d0: a(n) UnixOSProcessAccessor
0xbe8b2778 I UnixProcess>processProxy:forkAndExec:arguments:environment:descriptors: 0x30ad748: a(n) UnixProcess
0xbe8b27ac I ExternalUnixOSProcess>forkChild 0xf33628: a(n) ExternalUnixOSProcess
0xbe8b27cc I ExternalUnixOSProcess class>forkAndExec:arguments:environment: 0x2df3310: a(n) ExternalUnixOSProcess class
0xbe8b27f8 I ExternalUnixOSProcess class>command: 0x2df3310: a(n) ExternalUnixOSProcess class
0xbe8b281c I PictureCompare>killTimelapse 0x34161b0: a(n) PictureCompare
0xbe8b2840 I PictureCompare>waitKillTimelapse 0x34161b0: a(n) PictureCompare
0xbe8b2884 I PictureCompare>analyzeCameraQuarter 0x34161b0: a(n) PictureCompare
0xbe8b289c M PictureCompare>(nil) 0x34161b0: a(n) PictureCompare
0xbe8b28c8 I Compiler>evaluateCue:ifFail: 0xe66008: a(n) Compiler
0xbe8b28f4 I Compiler>evaluateCue:ifFail:logged: 0xe66008: a(n) Compiler
0xbe8b2924 I Compiler>evaluate:in:to:notifying:ifFail:logged: 0xe66008: a(n) Compiler
0xbe8b295c M [] in SmalltalkEditor(TextEditor)>evaluateSelectionAndDo: 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8b2978 M BlockClosure>on:do: 0xe661a0: a(n) BlockClosure
0xbe8af6d4 M SmalltalkEditor(TextEditor)>evaluateSelectionAndDo: 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af6f8 I SmalltalkEditor(TextEditor)>evaluateSelection 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af718 I SmalltalkEditor(TextEditor)>doIt 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af730 M SmalltalkEditor(TextEditor)>doIt: 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af75c I SmalltalkEditor(TextEditor)>dispatchOnKeyboardEvent: 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af780 I SmalltalkEditor(TextEditor)>keyStroke: 0x2dfbbb8: a(n) SmalltalkEditor
0xbe8af7a0 M [] in TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af7c4 M TextMorphForEditView(TextMorph)>handleInteraction:fromEvent: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af7ec I TextMorphForEditView>handleInteraction:fromEvent: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af814 M [] in TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af834 I StandardToolSet class>codeCompletionAround:textMorph:keyStroke: 0x1714200: a(n) StandardToolSet class
0xbe8af860 I ToolSet class>codeCompletionAround:textMorph:keyStroke: 0x170f7f8: a(n) ToolSet class
0xbe8af884 M TextMorphForEditView(TextMorph)>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af8ac I TextMorphForEditView>keyStroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af8d4 I TextMorphForEditView(Morph)>handleKeystroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af8fc I TextMorphForEditView(TextMorph)>handleKeystroke: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af918 M KeyboardEvent>sentTo: 0xe65d60: a(n) KeyboardEvent
0xbe8af938 M TextMorphForEditView(Morph)>handleEvent: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af954 M TextMorphForEditView(Morph)>handleFocusEvent: 0x341ffd8: a(n) TextMorphForEditView
0xbe8af978 M MorphicEventDispatcher>doHandlingForFocusEvent:with: 0xe657e8: a(n) MorphicEventDispatcher
0xbe8ae67c M MorphicEventDispatcher>dispatchFocusEvent:with: 0xe657e8: a(n) MorphicEventDispatcher
0xbe8ae69c M TextMorphForEditView(Morph)>processFocusEvent:using: 0x341ffd8: a(n) TextMorphForEditView
0xbe8ae6bc M TextMorphForEditView(Morph)>processFocusEvent: 0x341ffd8: a(n) TextMorphForEditView
0xbe8ae6e4 M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
0xbe8ae704 M BlockClosure>ensure: 0xe65868: a(n) BlockClosure
0xbe8ae724 M KeyboardEvent(MorphicEvent)>becomeActiveDuring: 0xe65018: a(n) KeyboardEvent
0xbe8ae74c M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
0xbe8ae76c M BlockClosure>ensure: 0xe65960: a(n) BlockClosure
0xbe8ae78c M HandMorph>becomeActiveDuring: 0x1c46458: a(n) HandMorph
0xbe8ae7b4 M [] in HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
0xbe8ae7d4 M BlockClosure>ensure: 0xe65a58: a(n) BlockClosure
0xbe8ae7f4 M PasteUpMorph>becomeActiveDuring: 0x1838780: a(n) PasteUpMorph
0xbe8ae818 M HandMorph>sendFocusEvent:to:clear: 0x1c46458: a(n) HandMorph
0xbe8ae844 M HandMorph>sendEvent:focus:clear: 0x1c46458: a(n) HandMorph
0xbe8ae868 M HandMorph>sendKeyboardEvent: 0x1c46458: a(n) HandMorph
0xbe8ae888 M HandMorph>handleEvent: 0x1c46458: a(n) HandMorph
0xbe8ae8b4 M HandMorph>processEvents 0x1c46458: a(n) HandMorph
0xbe8ae8d0 M [] in WorldState>doOneCycleNowFor: 0x227ba70: a(n) WorldState
0xbe8ae8f4 M Array(SequenceableCollection)>do: 0x13cfa10: a(n) Array
0xbe8ae910 M WorldState>handsDo: 0x227ba70: a(n) WorldState
0xbe8ae930 M WorldState>doOneCycleNowFor: 0x227ba70: a(n) WorldState
0xbe8ae94c M WorldState>doOneCycleFor: 0x227ba70: a(n) WorldState
0xbe8ae968 M PasteUpMorph>doOneCycle 0x1838780: a(n) PasteUpMorph
0xbe8ae980 M [] in MorphicProject>spawnNewProcess 0x23ca268: a(n) MorphicProject
 0x17c6208 s [] in BlockClosure>newProcess

Most recent primitives
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
scanBitLengths:into:
bitPosition
fixedBlockSizeFor:and:
fixedBlockSizeFor:and:
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
maxCode
dynamicBlockSizeFor:and:using:and:
dynamicBlockSizeFor:and:using:and:
dynamicBlockSizeFor:and:using:and:
+
+
bitLengthAt:
bitLengthAt:
at:
at:
at:
at:
at:
at:
at:
at:
at:
nextBits:put:
nextBits:put:
at:
nextBytePut:
flushBits
bitXor:
growTo:
growTo:
growTo:
growTo:
growTo:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
size
replaceFrom:to:with:startingAt:
size
size
size
initialPC
size
at:
at:
at:
perform:
size
newMethod:header:
at:put:
at:put:
at:put:
literalAt:
objectAt:put:
objectAt:put:
objectAt:put:
at:
at:put:
at:
at:put:
at:
at:put:
withArgs:executeMethod:
basicNew
basicNew
value
basicNew
size
size
size
replaceFrom:to:with:startingAt:
size
replaceFrom:to:with:startingAt:
value:value:
value:value:
value:value:
indexOfAscii:inString:startingAt:
value:value:
value:value:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
basicNew
getSystemAttribute:
findFirstInString:inSet:startingAt:
primOpen:writable:
shallowCopy
identityHash
wait
**StackOverflow**
identityHash
basicNew:
at:put:
basicNew
new:
signal
species
basicNew:
printString
printString
printString
primWrite:from:startingAt:count:
nextPutAll:
basicNew
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
=
at:
at:
basicNew
~=
getSystemAttribute:
findFirstInString:inSet:startingAt:
getSystemAttribute:
findFirstInString:inSet:startingAt:
primLookupEntryIn:name:
at:
at:
at:
at:
at:
basicNew
getSystemAttribute:
findFirstInString:inSet:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
indexOfAscii:inString:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
getSystemAttribute:
findFirstInString:inSet:startingAt:
fileNamed:
identityHash
wait
**StackOverflow**
identityHash
basicNew:
new:
signal
basicNew:
primWrite:from:startingAt:count:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
indexOfAscii:inString:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
getSystemAttribute:
findFirstInString:inSet:startingAt:
primOpen:writable:
identityHash
wait
**StackOverflow**
identityHash
basicNew:
new:
signal
basicNew:
primClose:
wait
remove:ifAbsent:
\\
at:
identityHash
signal
stringHash:initialHash:
stringHash:initialHash:
value:
identityHash
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
value:value:
=
beginsWith:
beginsWith:
beginsWith:
beginsWith:
setPathName:
getSystemAttribute:
findFirstInString:inSet:startingAt:
getSystemAttribute:
findFirstInString:inSet:startingAt:
directoryEntryForName:
directoryEntryForName:
directoryEntryForName:
directoryEntryForName:
directoryEntryForName:
directoryEntryForName:
basicNew
getSystemAttribute:
basicNew
basicNew
identityHash
primGetCurrentWorkingDirectory
value:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
value:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
primSizeOfPointer
value:

sizeOfPointer
value
value
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
replaceFrom:to:with:startingAt:
new:
collect:
at:
value:value:
value:value:
at:
value:value:
at:
value:value:
replaceFrom:to:with:startingAt:
at:
at:
at:
at:
at:
at:
at:
at:
primGetCurrentWorkingDirectory
compare:with:collated:
primForkExec:stdIn:stdOut:stdErr:argBuf:argOffsets:envBuf:envOffsets:workingDir:

stack page bytes 4096 available headroom 2788 minimum unused headroom 2996

	(Segmentation fault)