Pharo-dev
By thread
pharo-dev@lists.pharo.org
By month
Messages by month
- ----- 2026 -----
- July
- June
- May
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- July
- June
- May
July 2016
- 477 messages
Re: [Pharo-dev] Loading an image crashes the VM
by Holger Freyther
> On 30 Jul 2016, at 14:19, Holger Freyther <holger(a)freyther.de> wrote:
>
>
>> On 30 Jul 2016, at 13:14, Esteban Lorenzano <estebanlm(a)gmail.com> wrote:
>>
>> hi Holger,
>>
>> do you have a reproducible way for this error? it happens always?
>
> three times in a row, with the latest image. 50759 seems to be fine or I was lucky. The difference is small/odd. Let me try the intermediate images systematically now.
50759 fine
50760 fine
50761 broken
rm Pharo-50761.* && unzip 50761.zip && ./build/vm/pharo --nodisplay ./Pharo-50761.image eval --save "3+3" && ./build/vm/pharo --nodisplay ./Pharo-50761.image eval "3+3"
running with gdb makes it go away :}
holger
July 31, 2016
Re: [Pharo-dev] Status of SmallPOS
by Yuriy Mironenko
Sorry for answering the "deadly long forgotten" post, but, anyway: it happens
at the moment of migration to ss3, I believe. I don't really remember actual
"relicensing" process, I think it was just...welll...selecting from the
drop-down list, and this time I selected another option.
If you or somebody else will ever need SmallPOS under any other open
license, I will be glad to deliver it under this license.
--
View this message in context: http://forum.world.st/Status-of-SmallPOS-tp4649796p4908797.html
Sent from the Pharo Smalltalk Developers mailing list archive at Nabble.com.
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Dale Henrichs
Esteban,
The segfault is in the same method that I reported yesterday (with a
very reproducible test case)[1] ... also part of big 18706[2]
[1]
http://forum.world.st/segfault-fresh-Pharo5-0-download-w-pharo-VM-version-5…
[2] https://pharo.fogbugz.com/f/cases/18706#BugEvent.171062
Dale
On 7/30/16 4:14 AM, Esteban Lorenzano wrote:
> hi Holger,
>
> do you have a reproducible way for this error? it happens always?
>
> cheers,
> Esteban
>
>> On 30 Jul 2016, at 08:45, Holger Freyther <holger(a)freyther.de> wrote:
>>
>>
>>> On 17 Mar 2016, at 22:16, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
>> Hi!
>>
>>
>>> I got this error maybe once or twice maybe a year ago on linux, but I had a lot of windows opened (like 20 or 30), and when I got back to big screen it was ok again.
>> I am now seeing this with a Pharo50 build on a Jenkins setup.
>>
>>
>> + unzip pharo.zip
>> Archive: pharo.zip
>> inflating: Pharo-50761.image
>> inflating: Pharo-50761.changes
>> + mv Pharo-50761.image App.image
>> + mv Pharo-50761.changes App.changes
>> + create_symlinks
>> + export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
>> + LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
>> + ln -sf /usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 libcrypto.so
>> + /build/build/vm/pharo --nodisplay App.image eval --save '(NonInteractiveTranscript onFileNamed: #stdout)' install
>> Transcript
>> + /build/build/vm/pharo --nodisplay App.image clean --save
>>
>> Segmentation fault Fri Jul 29 19:34:57 2016
>>
>>
>> /build/build/vm/pharo
>> pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
>> Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
>> With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
>> Revision:
>> https://github.com/pharo-project/pharo-vm.git
>> Commit: b8ec25a570d7539653e1d793e97609adb509aaed Date: 2016-05-04 11:14:22 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com> Jenkins build #589
>> Build host: Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
>> plugin path: /build/build/vm/ [default: /build/build/vm/]
>>
>>
>> C stack backtrace & registers:
>> eax 0xff969e64 ebx 0xff969d80 ecx 0xff969e18 edx 0xff969dcc
>> edi 0xff969c50 esi 0xff969c50 ebp 0xff969ce8 esp 0xff969d34
>> eip 0xff969f48
>> *[0xff969f48]
>> /build/build/vm/pharo[0x80c0912]
>> /build/build/vm/pharo[0x80c0c76]
>> linux-gate.so.1(__kernel_rt_sigreturn+0x0)[0xf770bd50]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Stream_ReadULong+0x6e)[0xf743342e]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x524b7)[0xf74764b7]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x23daa)[0xf7447daa]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x10ecb)[0xf7434ecb]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Open_Face+0x2d9)[0xf7437bd9]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_New_Memory_Face+0x5a)[0xf74381ea]
>> /build/build/vm/libFT2Plugin.so(primitiveNewMemoryFaceFromExternalMemoryAndIndex+0xfa)[0xf74da15a]
>> /build/build/vm/pharo[0x80906a0]
>> /build/build/vm/pharo(interpret+0x51c6)[0x80b5886]
>> /build/build/vm/pharo[0x80b5e09]
>> /build/build/vm/pharo(interpret+0x1f6)[0x80b08b6]
>> /build/build/vm/pharo(main+0x2b2)[0x805cb92]
>> /lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf3)[0xf7504a63]
>> /build/build/vm/pharo[0x805ceb1]
>> /build/build/vm/pharo[0x812c328]
>>
>>
>> Smalltalk stack dump:
>> 0xff96f21c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index: 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f244 I FreeTypeFace>create 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f264 I FreeTypeFace>validate 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f284 I FreeTypeFont>face 0xa3ed1b0: a(n) FreeTypeFont
>> 0xff96f2c0 I FreeTypeFontProvider>fontFor:familyName: 0xae5a1d0: a(n) FreeTypeFontProvider
>> 0xff96f2ec M [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f310 M OrderedCollection>do: 0xaf65a20: a(n) OrderedCollection
>> 0xff96f33c I [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f360 M Array(SequenceableCollection)>do: 0xa3ec340: a(n) Array
>> 0xff96f388 I LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f3b0 I LogicalFontManager>bestFontFor: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f3d4 I LogicalFont>findRealFont 0xaf659d8: a(n) LogicalFont
>> 0xff96f3f4 I LogicalFont>realFont 0xaf659d8: a(n) LogicalFont
>> 0xff96f414 I LogicalFont>height 0xaf659d8: a(n) LogicalFont
>> 0xff96f434 I TextStyle>newFontArray: 0xa3ec2c8: a(n) TextStyle
>> 0xff96f458 I TextStyle class>fontArray: 0xaccf538: a(n) TextStyle class
>> 0xff96f474 M [] in LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
>> 0xff96f48c M Dictionary(Collection)>detect:ifFound:ifNone: 0xa3ebce0: a(n) Dictionary
>> 0xff96f4b0 M Dictionary(Collection)>detect:ifNone: 0xa3ebce0: a(n) Dictionary
>> 0xff96f4d8 I LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
>> 0xff96f4fc I TextMorphForFieldView(TextMorph)>font: 0xa3e6ee0: a(n) TextMorphForFieldView
>> 0xff96f520 I PluggableTextFieldMorph>beDecrypted 0xc66bfb0: a(n) PluggableTextFieldMorph
>> 0xff96f540 I PluggableTextFieldMorph>initialize 0xc66bfb0: a(n) PluggableTextFieldMorph
>> 0xc6d95e8 s PluggableTextFieldMorph class(Behavior)>new
>> 0xc6d96a8 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:font:help:entryCompletion:
>> 0xc6d9868 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:help:entryCompletion:
>> 0xc6d9a48 s RubFindReplaceDialogWindow(StandardWindow)>newAutoAcceptTextEntryFor:get:set:class:getEnabled:help:entryCompletion:
>> 0xc6d9b08 s RubFindReplaceDialogWindow>newFindTextEntryMorph
>> 0xc6d9b68 s RubFindReplaceDialogWindow>newContentMorph
>> 0xc6d9bc8 s RubFindReplaceDialogWindow(DialogWindow)>newMainPanel
>> 0xc6d9c28 s RubFindReplaceDialogWindow(DialogWindow)>addMainPanel
>> 0xc6d9c88 s RubFindReplaceDialogWindow(DialogWindow)>addInitialPanel
>> 0xc6d9ce8 s RubFindReplaceDialogWindow(DialogWindow)>initialize
>> 0xc6d9d48 s RubFindReplaceDialogWindow class(Behavior)>new
>> 0xc6d9da8 s RubFindReplaceService>newDialog
>> 0xc6d9e08 s RubFindReplaceService>dialog
>> 0xc6d9e68 s RubFindReplaceService>dialogIsActiveFor:
>> 0xc6d9ec8 s RubEditingArea(RubAbstractTextArea)>hasFindReplaceFocus
>> 0xc6d9f28 s RubTextScrollPane>drawSubmorphsOn:
>> 0xc6d9f88 s [] in RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6d9fe8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6da048 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6da0a8 s [] in RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6da108 s BlockClosure>on:do:
>> 0xc6da168 s RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6da1c8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6da228 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6da288 s [] in RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da2e8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6da348 s [] in RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da3a8 s FormCanvas>clipBy:during:
>> 0xc6da408 s RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da468 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da4c8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6da528 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6da588 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da5e8 s BlockClosure>on:do:
>> 0xc6da648 s RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da6a8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6da708 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6da768 s [] in StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da7c8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6da828 s [] in StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da888 s FormCanvas>clipBy:during:
>> 0xc6da8e8 s StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da948 s [] in StandardWindow(Morph)>fullDrawOn:
>> 0xc6da9a8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6daa08 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6daa68 s [] in StandardWindow(Morph)>fullDrawOn:
>> 0xc6daac8 s BlockClosure>on:do:
>> 0xc6dab28 s StandardWindow(Morph)>fullDrawOn:
>> 0xc6dab88 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dabe8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dac48 s [] in PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6daca8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6dad08 s [] in PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6dad68 s FormCanvas>clipBy:during:
>> 0xc6dadc8 s PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6dae28 s [] in PanelMorph(Morph)>fullDrawOn:
>> 0xc6dae88 s FormCanvas>roundCornersOf:in:during:
>> 0xc6daee8 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6daf48 s [] in PanelMorph(Morph)>fullDrawOn:
>> 0xc6dafa8 s BlockClosure>on:do:
>> 0xc6db008 s PanelMorph(Morph)>fullDrawOn:
>> 0xc6db068 s FormCanvas(Canvas)>fullDraw:
>> 0xc6db0c8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6db128 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db188 s Array(SequenceableCollection)>reverseDo:
>> 0xc6db1e8 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db248 s TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db2a8 s [] in TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db308 s FormCanvas>roundCornersOf:in:during:
>> 0xc6db368 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6db3c8 s [] in TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db428 s BlockClosure>on:do:
>> 0xc6db488 s TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db4e8 s TabGroupMorph>fullDrawOn:
>> 0xc6db548 s FormCanvas(Canvas)>fullDraw:
>> 0xc6db5a8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6db608 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db668 s Array(SequenceableCollection)>reverseDo:
>> 0xc6db6c8 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db728 s GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db788 s [] in GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db7e8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6db848 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6db8a8 s [] in GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db908 s BlockClosure>on:do:
>> 0xc6db968 s GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db9c8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dba28 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dba88 s [] in SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbae8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6dbb48 s [] in SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbba8 s FormCanvas>clipBy:during:
>> 0xc6dbc08 s SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbc68 s [] in SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbcc8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6dbd28 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6dbd88 s [] in SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbde8 s BlockClosure>on:do:
>> 0xc6dbe48 s SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbea8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dbf08 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dbf68 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc068 s Rectangle>allAreasOutsideList:startingAt:do:
>> 0xc6dc0c8 s Rectangle>allAreasOutsideList:do:
>> 0xc6dc128 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc228 s Array(SequenceableCollection)>do:
>> 0xc6dc288 s WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc388 s [] in WorldState>displayWorld:submorphs:
>> 0xc6dc3e8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6dc448 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6dc4a8 s WorldState>displayWorld:submorphs:
>> 0xc6dc508 s WorldMorph>displayWorld
>> 0xc6dc568 s [] in WorldState>displayWorldSafely:
>> 0xc6dc5c8 s BlockClosure>on:do:
>> 0xc6dc628 s BlockClosure>ifError:
>> 0xc6dc688 s WorldState>displayWorldSafely:
>> 0xc6dc6e8 s WorldState>doOneCycleNowFor:
>> 0xc6dc748 s WorldState>doOneCycleFor:
>> 0xc6dc7a8 s WorldMorph>doOneCycle
>> 0xc35ca30 s [] in MorphicUIManager>spawnNewProcess
>> 0xc167510 s [] in BlockClosure>newProcess
>>
>> Most recent primitives
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> replaceFrom:to:with:startingAt:
>> at:
>> objectAt:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> basicSize
>> new:
>> basicSize
>> basicAt:
>> replaceFrom:to:with:startingAt:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> stringHash:initialHash:
>> basicNew
>> basicIdentityHash
>> grow
>> grow
>> atLeast:
>> at:put:
>> at:put:
>> stringHash:initialHash:
>> at:
>> species
>> value:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> at:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> add:
>> value:
>> value:
>> value:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> value:
>> value:
>> class
>> value:
>> class
>> value:
>> class
>> class
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> stringHash:initialHash:
>> stringHash:initialHash:
>> stringHash:initialHash:
>> value:
>> stringHash:initialHash:
>> at:
>> at:put:
>> at:
>> stringHash:initialHash:
>> at:
>> at:
>> at:put:
>> at:put:
>> at:
>> stringHash:initialHash:
>> at:
>> stringHash:initialHash:
>> value
>> value
>> value
>> \\
>> \\
>> stringHash:initialHash:
>> =
>> stringHash:initialHash:
>> at:
>> value:
>> at:
>> at:
>> at:
>> at:
>> at:
>> basicNew
>> at:
>> basicNew
>> value:
>> value:
>> value
>> basicNew
>> value
>> primCurrentLibrary
>> stringHash:initialHash:
>> compare:with:collated:
>> value:
>> value:
>> at:
>> at:
>> value:value:
>> **StackOverflow**
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> class
>> raisedTo:
>> raisedTo:
>> bitAnd:
>> *
>> *
>> *
>> asFloat
>> sqrt
>> truncated
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> bitShift:
>> **PrimitiveFailure**
>> bitShiftMagnitude:
>> timesTwoPower:
>>> =
>> at:
>> value:value:
>> first
>> first
>> +
>> +
>> +
>> truncated
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> truncated
>> value:value:
>> truncated
>> truncated
>> value:value:
>> **PrimitiveFailure**
>> bitShiftMagnitude:
>> timesTwoPower:
>> value:value:
>> **PrimitiveFailure**
>> basicAt:
>> bitShiftMagnitude:
>> basicAt:
>> bitAnd:
>> bitShiftMagnitude:
>> basicAt:
>> +
>> bitOr:
>> digitCompare:
>> bitShiftMagnitude:
>> bitShiftMagnitude:
>> digitCompare:
>> <
>> perform:with:
>> digitMultiply:neg:
>> *
>> <
>> at:
>> value:value:
>> truncated
>> truncated
>> at:
>> value:value:
>> truncated
>> truncated
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> at:
>> at:
>> at:put:
>> at:put:
>> at:
>> value:value:
>> truncated
>> truncated
>> sort:to:
>> sort:to:
>> sort:to:
>> sort:to:
>> truncated
>> truncated
>> truncated
>> truncated
>> bitShiftMagnitude:
>> timesTwoPower:
>> basicNew
>> allInstancesOrNil
>> value:
>> value:
>> **StackOverflow**
>> size
>> primNewFaceFromExternalMemory:size:index:
>>
>> stack page bytes 4096 available headroom 2788 minimum unused headroom 3020
>>
>> (Segmentation fault)
>
July 30, 2016
magritteXML fixes
by Sean Glazier
Hi,
I tried to publish fixes to the Magritte XML package and the Smalltalk hub
is not working. I published off to our own repository. I there an ETA on
its getting fixed or an alternative repository to publish to?
Kind Regards,
Sean Glazier
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Holger Freyther
> On 30 Jul 2016, at 13:14, Esteban Lorenzano <estebanlm(a)gmail.com> wrote:
>
> hi Holger,
>
> do you have a reproducible way for this error? it happens always?
three times in a row, with the latest image. 50759 seems to be fine or I was lucky. The difference is small/odd. Let me try the intermediate images systematically now.
holger
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Sven Van Caekenberghe
> On 30 Jul 2016, at 13:14, Esteban Lorenzano <estebanlm(a)gmail.com> wrote:
>
> hi Holger,
>
> do you have a reproducible way for this error? it happens always?
I have the impression that most derived 5.0 builds fail now, for example:
https://ci.inria.fr/pharo-contribution/job/ZincHTTPComponents/
https://ci.inria.fr/pharo-contribution/job/NeoJSON/
> cheers,
> Esteban
>
>> On 30 Jul 2016, at 08:45, Holger Freyther <holger(a)freyther.de> wrote:
>>
>>
>>> On 17 Mar 2016, at 22:16, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
>>
>> Hi!
>>
>>
>>> I got this error maybe once or twice maybe a year ago on linux, but I had a lot of windows opened (like 20 or 30), and when I got back to big screen it was ok again.
>>
>> I am now seeing this with a Pharo50 build on a Jenkins setup.
>>
>>
>> + unzip pharo.zip
>> Archive: pharo.zip
>> inflating: Pharo-50761.image
>> inflating: Pharo-50761.changes
>> + mv Pharo-50761.image App.image
>> + mv Pharo-50761.changes App.changes
>> + create_symlinks
>> + export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
>> + LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
>> + ln -sf /usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 libcrypto.so
>> + /build/build/vm/pharo --nodisplay App.image eval --save '(NonInteractiveTranscript onFileNamed: #stdout)' install
>> Transcript
>> + /build/build/vm/pharo --nodisplay App.image clean --save
>>
>> Segmentation fault Fri Jul 29 19:34:57 2016
>>
>>
>> /build/build/vm/pharo
>> pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
>> Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
>> With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
>> Revision:
>> https://github.com/pharo-project/pharo-vm.git
>> Commit: b8ec25a570d7539653e1d793e97609adb509aaed Date: 2016-05-04 11:14:22 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com> Jenkins build #589
>> Build host: Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
>> plugin path: /build/build/vm/ [default: /build/build/vm/]
>>
>>
>> C stack backtrace & registers:
>> eax 0xff969e64 ebx 0xff969d80 ecx 0xff969e18 edx 0xff969dcc
>> edi 0xff969c50 esi 0xff969c50 ebp 0xff969ce8 esp 0xff969d34
>> eip 0xff969f48
>> *[0xff969f48]
>> /build/build/vm/pharo[0x80c0912]
>> /build/build/vm/pharo[0x80c0c76]
>> linux-gate.so.1(__kernel_rt_sigreturn+0x0)[0xf770bd50]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Stream_ReadULong+0x6e)[0xf743342e]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x524b7)[0xf74764b7]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x23daa)[0xf7447daa]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x10ecb)[0xf7434ecb]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Open_Face+0x2d9)[0xf7437bd9]
>> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_New_Memory_Face+0x5a)[0xf74381ea]
>> /build/build/vm/libFT2Plugin.so(primitiveNewMemoryFaceFromExternalMemoryAndIndex+0xfa)[0xf74da15a]
>> /build/build/vm/pharo[0x80906a0]
>> /build/build/vm/pharo(interpret+0x51c6)[0x80b5886]
>> /build/build/vm/pharo[0x80b5e09]
>> /build/build/vm/pharo(interpret+0x1f6)[0x80b08b6]
>> /build/build/vm/pharo(main+0x2b2)[0x805cb92]
>> /lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf3)[0xf7504a63]
>> /build/build/vm/pharo[0x805ceb1]
>> /build/build/vm/pharo[0x812c328]
>>
>>
>> Smalltalk stack dump:
>> 0xff96f21c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index: 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f244 I FreeTypeFace>create 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f264 I FreeTypeFace>validate 0xc6dc808: a(n) FreeTypeFace
>> 0xff96f284 I FreeTypeFont>face 0xa3ed1b0: a(n) FreeTypeFont
>> 0xff96f2c0 I FreeTypeFontProvider>fontFor:familyName: 0xae5a1d0: a(n) FreeTypeFontProvider
>> 0xff96f2ec M [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f310 M OrderedCollection>do: 0xaf65a20: a(n) OrderedCollection
>> 0xff96f33c I [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f360 M Array(SequenceableCollection)>do: 0xa3ec340: a(n) Array
>> 0xff96f388 I LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f3b0 I LogicalFontManager>bestFontFor: 0xaf65a10: a(n) LogicalFontManager
>> 0xff96f3d4 I LogicalFont>findRealFont 0xaf659d8: a(n) LogicalFont
>> 0xff96f3f4 I LogicalFont>realFont 0xaf659d8: a(n) LogicalFont
>> 0xff96f414 I LogicalFont>height 0xaf659d8: a(n) LogicalFont
>> 0xff96f434 I TextStyle>newFontArray: 0xa3ec2c8: a(n) TextStyle
>> 0xff96f458 I TextStyle class>fontArray: 0xaccf538: a(n) TextStyle class
>> 0xff96f474 M [] in LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
>> 0xff96f48c M Dictionary(Collection)>detect:ifFound:ifNone: 0xa3ebce0: a(n) Dictionary
>> 0xff96f4b0 M Dictionary(Collection)>detect:ifNone: 0xa3ebce0: a(n) Dictionary
>> 0xff96f4d8 I LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
>> 0xff96f4fc I TextMorphForFieldView(TextMorph)>font: 0xa3e6ee0: a(n) TextMorphForFieldView
>> 0xff96f520 I PluggableTextFieldMorph>beDecrypted 0xc66bfb0: a(n) PluggableTextFieldMorph
>> 0xff96f540 I PluggableTextFieldMorph>initialize 0xc66bfb0: a(n) PluggableTextFieldMorph
>> 0xc6d95e8 s PluggableTextFieldMorph class(Behavior)>new
>> 0xc6d96a8 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:font:help:entryCompletion:
>> 0xc6d9868 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:help:entryCompletion:
>> 0xc6d9a48 s RubFindReplaceDialogWindow(StandardWindow)>newAutoAcceptTextEntryFor:get:set:class:getEnabled:help:entryCompletion:
>> 0xc6d9b08 s RubFindReplaceDialogWindow>newFindTextEntryMorph
>> 0xc6d9b68 s RubFindReplaceDialogWindow>newContentMorph
>> 0xc6d9bc8 s RubFindReplaceDialogWindow(DialogWindow)>newMainPanel
>> 0xc6d9c28 s RubFindReplaceDialogWindow(DialogWindow)>addMainPanel
>> 0xc6d9c88 s RubFindReplaceDialogWindow(DialogWindow)>addInitialPanel
>> 0xc6d9ce8 s RubFindReplaceDialogWindow(DialogWindow)>initialize
>> 0xc6d9d48 s RubFindReplaceDialogWindow class(Behavior)>new
>> 0xc6d9da8 s RubFindReplaceService>newDialog
>> 0xc6d9e08 s RubFindReplaceService>dialog
>> 0xc6d9e68 s RubFindReplaceService>dialogIsActiveFor:
>> 0xc6d9ec8 s RubEditingArea(RubAbstractTextArea)>hasFindReplaceFocus
>> 0xc6d9f28 s RubTextScrollPane>drawSubmorphsOn:
>> 0xc6d9f88 s [] in RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6d9fe8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6da048 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6da0a8 s [] in RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6da108 s BlockClosure>on:do:
>> 0xc6da168 s RubTextScrollPane(Morph)>fullDrawOn:
>> 0xc6da1c8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6da228 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6da288 s [] in RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da2e8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6da348 s [] in RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da3a8 s FormCanvas>clipBy:during:
>> 0xc6da408 s RubScrolledTextMorph>drawSubmorphsOn:
>> 0xc6da468 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da4c8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6da528 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6da588 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da5e8 s BlockClosure>on:do:
>> 0xc6da648 s RubScrolledTextMorph(Morph)>fullDrawOn:
>> 0xc6da6a8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6da708 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6da768 s [] in StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da7c8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6da828 s [] in StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da888 s FormCanvas>clipBy:during:
>> 0xc6da8e8 s StandardWindow(Morph)>drawSubmorphsOn:
>> 0xc6da948 s [] in StandardWindow(Morph)>fullDrawOn:
>> 0xc6da9a8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6daa08 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6daa68 s [] in StandardWindow(Morph)>fullDrawOn:
>> 0xc6daac8 s BlockClosure>on:do:
>> 0xc6dab28 s StandardWindow(Morph)>fullDrawOn:
>> 0xc6dab88 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dabe8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dac48 s [] in PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6daca8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6dad08 s [] in PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6dad68 s FormCanvas>clipBy:during:
>> 0xc6dadc8 s PanelMorph(Morph)>drawSubmorphsOn:
>> 0xc6dae28 s [] in PanelMorph(Morph)>fullDrawOn:
>> 0xc6dae88 s FormCanvas>roundCornersOf:in:during:
>> 0xc6daee8 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6daf48 s [] in PanelMorph(Morph)>fullDrawOn:
>> 0xc6dafa8 s BlockClosure>on:do:
>> 0xc6db008 s PanelMorph(Morph)>fullDrawOn:
>> 0xc6db068 s FormCanvas(Canvas)>fullDraw:
>> 0xc6db0c8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6db128 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db188 s Array(SequenceableCollection)>reverseDo:
>> 0xc6db1e8 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db248 s TabGroupMorph(Morph)>drawSubmorphsOn:
>> 0xc6db2a8 s [] in TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db308 s FormCanvas>roundCornersOf:in:during:
>> 0xc6db368 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6db3c8 s [] in TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db428 s BlockClosure>on:do:
>> 0xc6db488 s TabGroupMorph(Morph)>fullDrawOn:
>> 0xc6db4e8 s TabGroupMorph>fullDrawOn:
>> 0xc6db548 s FormCanvas(Canvas)>fullDraw:
>> 0xc6db5a8 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6db608 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db668 s Array(SequenceableCollection)>reverseDo:
>> 0xc6db6c8 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db728 s GroupWindowMorph(Morph)>drawSubmorphsOn:
>> 0xc6db788 s [] in GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db7e8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6db848 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6db8a8 s [] in GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db908 s BlockClosure>on:do:
>> 0xc6db968 s GroupWindowMorph(Morph)>fullDrawOn:
>> 0xc6db9c8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dba28 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dba88 s [] in SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbae8 s Array(SequenceableCollection)>reverseDo:
>> 0xc6dbb48 s [] in SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbba8 s FormCanvas>clipBy:during:
>> 0xc6dbc08 s SystemWindow(Morph)>drawSubmorphsOn:
>> 0xc6dbc68 s [] in SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbcc8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6dbd28 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6dbd88 s [] in SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbde8 s BlockClosure>on:do:
>> 0xc6dbe48 s SystemWindow(Morph)>fullDrawOn:
>> 0xc6dbea8 s FormCanvas(Canvas)>fullDraw:
>> 0xc6dbf08 s FormCanvas(Canvas)>fullDrawMorph:
>> 0xc6dbf68 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc068 s Rectangle>allAreasOutsideList:startingAt:do:
>> 0xc6dc0c8 s Rectangle>allAreasOutsideList:do:
>> 0xc6dc128 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc228 s Array(SequenceableCollection)>do:
>> 0xc6dc288 s WorldState>drawWorld:submorphs:invalidAreasOn:
>> 0xc6dc388 s [] in WorldState>displayWorld:submorphs:
>> 0xc6dc3e8 s FormCanvas>roundCornersOf:in:during:
>> 0xc6dc448 s FormCanvas(Canvas)>roundCornersOf:during:
>> 0xc6dc4a8 s WorldState>displayWorld:submorphs:
>> 0xc6dc508 s WorldMorph>displayWorld
>> 0xc6dc568 s [] in WorldState>displayWorldSafely:
>> 0xc6dc5c8 s BlockClosure>on:do:
>> 0xc6dc628 s BlockClosure>ifError:
>> 0xc6dc688 s WorldState>displayWorldSafely:
>> 0xc6dc6e8 s WorldState>doOneCycleNowFor:
>> 0xc6dc748 s WorldState>doOneCycleFor:
>> 0xc6dc7a8 s WorldMorph>doOneCycle
>> 0xc35ca30 s [] in MorphicUIManager>spawnNewProcess
>> 0xc167510 s [] in BlockClosure>newProcess
>>
>> Most recent primitives
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> replaceFrom:to:with:startingAt:
>> at:
>> objectAt:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> basicSize
>> new:
>> basicSize
>> basicAt:
>> replaceFrom:to:with:startingAt:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> at:
>> stringHash:initialHash:
>> basicNew
>> basicIdentityHash
>> grow
>> grow
>> atLeast:
>> at:put:
>> at:put:
>> stringHash:initialHash:
>> at:
>> species
>> value:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> at:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> add:
>> value:
>> value:
>> value:
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> value:
>> value:
>> class
>> value:
>> class
>> value:
>> class
>> class
>> value:
>> shallowCopy
>> stringHash:initialHash:
>> stringHash:initialHash:
>> stringHash:initialHash:
>> stringHash:initialHash:
>> value:
>> stringHash:initialHash:
>> at:
>> at:put:
>> at:
>> stringHash:initialHash:
>> at:
>> at:
>> at:put:
>> at:put:
>> at:
>> stringHash:initialHash:
>> at:
>> stringHash:initialHash:
>> value
>> value
>> value
>> \\
>> \\
>> stringHash:initialHash:
>> =
>> stringHash:initialHash:
>> at:
>> value:
>> at:
>> at:
>> at:
>> at:
>> at:
>> basicNew
>> at:
>> basicNew
>> value:
>> value:
>> value
>> basicNew
>> value
>> primCurrentLibrary
>> stringHash:initialHash:
>> compare:with:collated:
>> value:
>> value:
>> at:
>> at:
>> value:value:
>> **StackOverflow**
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> closenessVectorForStretch:slant:weight:
>> class
>> raisedTo:
>> raisedTo:
>> bitAnd:
>> *
>> *
>> *
>> asFloat
>> sqrt
>> truncated
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> bitShift:
>> **PrimitiveFailure**
>> bitShiftMagnitude:
>> timesTwoPower:
>>> =
>> at:
>> value:value:
>> first
>> first
>> +
>> +
>> +
>> truncated
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> sqrt
>> truncated
>> value:value:
>> truncated
>> truncated
>> value:value:
>> **PrimitiveFailure**
>> bitShiftMagnitude:
>> timesTwoPower:
>> value:value:
>> **PrimitiveFailure**
>> basicAt:
>> bitShiftMagnitude:
>> basicAt:
>> bitAnd:
>> bitShiftMagnitude:
>> basicAt:
>> +
>> bitOr:
>> digitCompare:
>> bitShiftMagnitude:
>> bitShiftMagnitude:
>> digitCompare:
>> <
>> perform:with:
>> digitMultiply:neg:
>> *
>> <
>> at:
>> value:value:
>> truncated
>> truncated
>> at:
>> value:value:
>> truncated
>> truncated
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> value:value:
>> at:
>> at:
>> at:put:
>> at:put:
>> at:
>> value:value:
>> truncated
>> truncated
>> sort:to:
>> sort:to:
>> sort:to:
>> sort:to:
>> truncated
>> truncated
>> truncated
>> truncated
>> bitShiftMagnitude:
>> timesTwoPower:
>> basicNew
>> allInstancesOrNil
>> value:
>> value:
>> **StackOverflow**
>> size
>> primNewFaceFromExternalMemory:size:index:
>>
>> stack page bytes 4096 available headroom 2788 minimum unused headroom 3020
>>
>> (Segmentation fault)
>
>
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Esteban Lorenzano
hi Holger,
do you have a reproducible way for this error? it happens always?
cheers,
Esteban
> On 30 Jul 2016, at 08:45, Holger Freyther <holger(a)freyther.de> wrote:
>
>
>> On 17 Mar 2016, at 22:16, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
>
> Hi!
>
>
>> I got this error maybe once or twice maybe a year ago on linux, but I had a lot of windows opened (like 20 or 30), and when I got back to big screen it was ok again.
>
> I am now seeing this with a Pharo50 build on a Jenkins setup.
>
>
> + unzip pharo.zip
> Archive: pharo.zip
> inflating: Pharo-50761.image
> inflating: Pharo-50761.changes
> + mv Pharo-50761.image App.image
> + mv Pharo-50761.changes App.changes
> + create_symlinks
> + export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
> + LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
> + ln -sf /usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 libcrypto.so
> + /build/build/vm/pharo --nodisplay App.image eval --save '(NonInteractiveTranscript onFileNamed: #stdout)' install
> Transcript
> + /build/build/vm/pharo --nodisplay App.image clean --save
>
> Segmentation fault Fri Jul 29 19:34:57 2016
>
>
> /build/build/vm/pharo
> pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
> Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
> With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
> Revision:
> https://github.com/pharo-project/pharo-vm.git
> Commit: b8ec25a570d7539653e1d793e97609adb509aaed Date: 2016-05-04 11:14:22 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com> Jenkins build #589
> Build host: Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
> plugin path: /build/build/vm/ [default: /build/build/vm/]
>
>
> C stack backtrace & registers:
> eax 0xff969e64 ebx 0xff969d80 ecx 0xff969e18 edx 0xff969dcc
> edi 0xff969c50 esi 0xff969c50 ebp 0xff969ce8 esp 0xff969d34
> eip 0xff969f48
> *[0xff969f48]
> /build/build/vm/pharo[0x80c0912]
> /build/build/vm/pharo[0x80c0c76]
> linux-gate.so.1(__kernel_rt_sigreturn+0x0)[0xf770bd50]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Stream_ReadULong+0x6e)[0xf743342e]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x524b7)[0xf74764b7]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x23daa)[0xf7447daa]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(+0x10ecb)[0xf7434ecb]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Open_Face+0x2d9)[0xf7437bd9]
> /usr/lib/i386-linux-gnu/libfreetype.so.6(FT_New_Memory_Face+0x5a)[0xf74381ea]
> /build/build/vm/libFT2Plugin.so(primitiveNewMemoryFaceFromExternalMemoryAndIndex+0xfa)[0xf74da15a]
> /build/build/vm/pharo[0x80906a0]
> /build/build/vm/pharo(interpret+0x51c6)[0x80b5886]
> /build/build/vm/pharo[0x80b5e09]
> /build/build/vm/pharo(interpret+0x1f6)[0x80b08b6]
> /build/build/vm/pharo(main+0x2b2)[0x805cb92]
> /lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf3)[0xf7504a63]
> /build/build/vm/pharo[0x805ceb1]
> /build/build/vm/pharo[0x812c328]
>
>
> Smalltalk stack dump:
> 0xff96f21c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index: 0xc6dc808: a(n) FreeTypeFace
> 0xff96f244 I FreeTypeFace>create 0xc6dc808: a(n) FreeTypeFace
> 0xff96f264 I FreeTypeFace>validate 0xc6dc808: a(n) FreeTypeFace
> 0xff96f284 I FreeTypeFont>face 0xa3ed1b0: a(n) FreeTypeFont
> 0xff96f2c0 I FreeTypeFontProvider>fontFor:familyName: 0xae5a1d0: a(n) FreeTypeFontProvider
> 0xff96f2ec M [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
> 0xff96f310 M OrderedCollection>do: 0xaf65a20: a(n) OrderedCollection
> 0xff96f33c I [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
> 0xff96f360 M Array(SequenceableCollection)>do: 0xa3ec340: a(n) Array
> 0xff96f388 I LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
> 0xff96f3b0 I LogicalFontManager>bestFontFor: 0xaf65a10: a(n) LogicalFontManager
> 0xff96f3d4 I LogicalFont>findRealFont 0xaf659d8: a(n) LogicalFont
> 0xff96f3f4 I LogicalFont>realFont 0xaf659d8: a(n) LogicalFont
> 0xff96f414 I LogicalFont>height 0xaf659d8: a(n) LogicalFont
> 0xff96f434 I TextStyle>newFontArray: 0xa3ec2c8: a(n) TextStyle
> 0xff96f458 I TextStyle class>fontArray: 0xaccf538: a(n) TextStyle class
> 0xff96f474 M [] in LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
> 0xff96f48c M Dictionary(Collection)>detect:ifFound:ifNone: 0xa3ebce0: a(n) Dictionary
> 0xff96f4b0 M Dictionary(Collection)>detect:ifNone: 0xa3ebce0: a(n) Dictionary
> 0xff96f4d8 I LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
> 0xff96f4fc I TextMorphForFieldView(TextMorph)>font: 0xa3e6ee0: a(n) TextMorphForFieldView
> 0xff96f520 I PluggableTextFieldMorph>beDecrypted 0xc66bfb0: a(n) PluggableTextFieldMorph
> 0xff96f540 I PluggableTextFieldMorph>initialize 0xc66bfb0: a(n) PluggableTextFieldMorph
> 0xc6d95e8 s PluggableTextFieldMorph class(Behavior)>new
> 0xc6d96a8 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:font:help:entryCompletion:
> 0xc6d9868 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:help:entryCompletion:
> 0xc6d9a48 s RubFindReplaceDialogWindow(StandardWindow)>newAutoAcceptTextEntryFor:get:set:class:getEnabled:help:entryCompletion:
> 0xc6d9b08 s RubFindReplaceDialogWindow>newFindTextEntryMorph
> 0xc6d9b68 s RubFindReplaceDialogWindow>newContentMorph
> 0xc6d9bc8 s RubFindReplaceDialogWindow(DialogWindow)>newMainPanel
> 0xc6d9c28 s RubFindReplaceDialogWindow(DialogWindow)>addMainPanel
> 0xc6d9c88 s RubFindReplaceDialogWindow(DialogWindow)>addInitialPanel
> 0xc6d9ce8 s RubFindReplaceDialogWindow(DialogWindow)>initialize
> 0xc6d9d48 s RubFindReplaceDialogWindow class(Behavior)>new
> 0xc6d9da8 s RubFindReplaceService>newDialog
> 0xc6d9e08 s RubFindReplaceService>dialog
> 0xc6d9e68 s RubFindReplaceService>dialogIsActiveFor:
> 0xc6d9ec8 s RubEditingArea(RubAbstractTextArea)>hasFindReplaceFocus
> 0xc6d9f28 s RubTextScrollPane>drawSubmorphsOn:
> 0xc6d9f88 s [] in RubTextScrollPane(Morph)>fullDrawOn:
> 0xc6d9fe8 s FormCanvas>roundCornersOf:in:during:
> 0xc6da048 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6da0a8 s [] in RubTextScrollPane(Morph)>fullDrawOn:
> 0xc6da108 s BlockClosure>on:do:
> 0xc6da168 s RubTextScrollPane(Morph)>fullDrawOn:
> 0xc6da1c8 s FormCanvas(Canvas)>fullDraw:
> 0xc6da228 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6da288 s [] in RubScrolledTextMorph>drawSubmorphsOn:
> 0xc6da2e8 s Array(SequenceableCollection)>reverseDo:
> 0xc6da348 s [] in RubScrolledTextMorph>drawSubmorphsOn:
> 0xc6da3a8 s FormCanvas>clipBy:during:
> 0xc6da408 s RubScrolledTextMorph>drawSubmorphsOn:
> 0xc6da468 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
> 0xc6da4c8 s FormCanvas>roundCornersOf:in:during:
> 0xc6da528 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6da588 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
> 0xc6da5e8 s BlockClosure>on:do:
> 0xc6da648 s RubScrolledTextMorph(Morph)>fullDrawOn:
> 0xc6da6a8 s FormCanvas(Canvas)>fullDraw:
> 0xc6da708 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6da768 s [] in StandardWindow(Morph)>drawSubmorphsOn:
> 0xc6da7c8 s Array(SequenceableCollection)>reverseDo:
> 0xc6da828 s [] in StandardWindow(Morph)>drawSubmorphsOn:
> 0xc6da888 s FormCanvas>clipBy:during:
> 0xc6da8e8 s StandardWindow(Morph)>drawSubmorphsOn:
> 0xc6da948 s [] in StandardWindow(Morph)>fullDrawOn:
> 0xc6da9a8 s FormCanvas>roundCornersOf:in:during:
> 0xc6daa08 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6daa68 s [] in StandardWindow(Morph)>fullDrawOn:
> 0xc6daac8 s BlockClosure>on:do:
> 0xc6dab28 s StandardWindow(Morph)>fullDrawOn:
> 0xc6dab88 s FormCanvas(Canvas)>fullDraw:
> 0xc6dabe8 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6dac48 s [] in PanelMorph(Morph)>drawSubmorphsOn:
> 0xc6daca8 s Array(SequenceableCollection)>reverseDo:
> 0xc6dad08 s [] in PanelMorph(Morph)>drawSubmorphsOn:
> 0xc6dad68 s FormCanvas>clipBy:during:
> 0xc6dadc8 s PanelMorph(Morph)>drawSubmorphsOn:
> 0xc6dae28 s [] in PanelMorph(Morph)>fullDrawOn:
> 0xc6dae88 s FormCanvas>roundCornersOf:in:during:
> 0xc6daee8 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6daf48 s [] in PanelMorph(Morph)>fullDrawOn:
> 0xc6dafa8 s BlockClosure>on:do:
> 0xc6db008 s PanelMorph(Morph)>fullDrawOn:
> 0xc6db068 s FormCanvas(Canvas)>fullDraw:
> 0xc6db0c8 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6db128 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
> 0xc6db188 s Array(SequenceableCollection)>reverseDo:
> 0xc6db1e8 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
> 0xc6db248 s TabGroupMorph(Morph)>drawSubmorphsOn:
> 0xc6db2a8 s [] in TabGroupMorph(Morph)>fullDrawOn:
> 0xc6db308 s FormCanvas>roundCornersOf:in:during:
> 0xc6db368 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6db3c8 s [] in TabGroupMorph(Morph)>fullDrawOn:
> 0xc6db428 s BlockClosure>on:do:
> 0xc6db488 s TabGroupMorph(Morph)>fullDrawOn:
> 0xc6db4e8 s TabGroupMorph>fullDrawOn:
> 0xc6db548 s FormCanvas(Canvas)>fullDraw:
> 0xc6db5a8 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6db608 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
> 0xc6db668 s Array(SequenceableCollection)>reverseDo:
> 0xc6db6c8 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
> 0xc6db728 s GroupWindowMorph(Morph)>drawSubmorphsOn:
> 0xc6db788 s [] in GroupWindowMorph(Morph)>fullDrawOn:
> 0xc6db7e8 s FormCanvas>roundCornersOf:in:during:
> 0xc6db848 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6db8a8 s [] in GroupWindowMorph(Morph)>fullDrawOn:
> 0xc6db908 s BlockClosure>on:do:
> 0xc6db968 s GroupWindowMorph(Morph)>fullDrawOn:
> 0xc6db9c8 s FormCanvas(Canvas)>fullDraw:
> 0xc6dba28 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6dba88 s [] in SystemWindow(Morph)>drawSubmorphsOn:
> 0xc6dbae8 s Array(SequenceableCollection)>reverseDo:
> 0xc6dbb48 s [] in SystemWindow(Morph)>drawSubmorphsOn:
> 0xc6dbba8 s FormCanvas>clipBy:during:
> 0xc6dbc08 s SystemWindow(Morph)>drawSubmorphsOn:
> 0xc6dbc68 s [] in SystemWindow(Morph)>fullDrawOn:
> 0xc6dbcc8 s FormCanvas>roundCornersOf:in:during:
> 0xc6dbd28 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6dbd88 s [] in SystemWindow(Morph)>fullDrawOn:
> 0xc6dbde8 s BlockClosure>on:do:
> 0xc6dbe48 s SystemWindow(Morph)>fullDrawOn:
> 0xc6dbea8 s FormCanvas(Canvas)>fullDraw:
> 0xc6dbf08 s FormCanvas(Canvas)>fullDrawMorph:
> 0xc6dbf68 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
> 0xc6dc068 s Rectangle>allAreasOutsideList:startingAt:do:
> 0xc6dc0c8 s Rectangle>allAreasOutsideList:do:
> 0xc6dc128 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
> 0xc6dc228 s Array(SequenceableCollection)>do:
> 0xc6dc288 s WorldState>drawWorld:submorphs:invalidAreasOn:
> 0xc6dc388 s [] in WorldState>displayWorld:submorphs:
> 0xc6dc3e8 s FormCanvas>roundCornersOf:in:during:
> 0xc6dc448 s FormCanvas(Canvas)>roundCornersOf:during:
> 0xc6dc4a8 s WorldState>displayWorld:submorphs:
> 0xc6dc508 s WorldMorph>displayWorld
> 0xc6dc568 s [] in WorldState>displayWorldSafely:
> 0xc6dc5c8 s BlockClosure>on:do:
> 0xc6dc628 s BlockClosure>ifError:
> 0xc6dc688 s WorldState>displayWorldSafely:
> 0xc6dc6e8 s WorldState>doOneCycleNowFor:
> 0xc6dc748 s WorldState>doOneCycleFor:
> 0xc6dc7a8 s WorldMorph>doOneCycle
> 0xc35ca30 s [] in MorphicUIManager>spawnNewProcess
> 0xc167510 s [] in BlockClosure>newProcess
>
> Most recent primitives
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> replaceFrom:to:with:startingAt:
> at:
> objectAt:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> basicSize
> new:
> basicSize
> basicAt:
> replaceFrom:to:with:startingAt:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> at:
> stringHash:initialHash:
> basicNew
> basicIdentityHash
> grow
> grow
> atLeast:
> at:put:
> at:put:
> stringHash:initialHash:
> at:
> species
> value:
> value:
> shallowCopy
> stringHash:initialHash:
> at:
> value:
> shallowCopy
> stringHash:initialHash:
> add:
> value:
> value:
> value:
> value:
> shallowCopy
> stringHash:initialHash:
> value:
> value:
> class
> value:
> class
> value:
> class
> class
> value:
> shallowCopy
> stringHash:initialHash:
> stringHash:initialHash:
> stringHash:initialHash:
> stringHash:initialHash:
> value:
> stringHash:initialHash:
> at:
> at:put:
> at:
> stringHash:initialHash:
> at:
> at:
> at:put:
> at:put:
> at:
> stringHash:initialHash:
> at:
> stringHash:initialHash:
> value
> value
> value
> \\
> \\
> stringHash:initialHash:
> =
> stringHash:initialHash:
> at:
> value:
> at:
> at:
> at:
> at:
> at:
> basicNew
> at:
> basicNew
> value:
> value:
> value
> basicNew
> value
> primCurrentLibrary
> stringHash:initialHash:
> compare:with:collated:
> value:
> value:
> at:
> at:
> value:value:
> **StackOverflow**
> closenessVectorForStretch:slant:weight:
> closenessVectorForStretch:slant:weight:
> closenessVectorForStretch:slant:weight:
> closenessVectorForStretch:slant:weight:
> closenessVectorForStretch:slant:weight:
> closenessVectorForStretch:slant:weight:
> class
> raisedTo:
> raisedTo:
> bitAnd:
> *
> *
> *
> asFloat
> sqrt
> truncated
> sqrt
> sqrt
> sqrt
> sqrt
> sqrt
> bitShift:
> **PrimitiveFailure**
> bitShiftMagnitude:
> timesTwoPower:
>> =
> at:
> value:value:
> first
> first
> +
> +
> +
> truncated
> sqrt
> sqrt
> sqrt
> sqrt
> sqrt
> truncated
> value:value:
> truncated
> truncated
> value:value:
> **PrimitiveFailure**
> bitShiftMagnitude:
> timesTwoPower:
> value:value:
> **PrimitiveFailure**
> basicAt:
> bitShiftMagnitude:
> basicAt:
> bitAnd:
> bitShiftMagnitude:
> basicAt:
> +
> bitOr:
> digitCompare:
> bitShiftMagnitude:
> bitShiftMagnitude:
> digitCompare:
> <
> perform:with:
> digitMultiply:neg:
> *
> <
> at:
> value:value:
> truncated
> truncated
> at:
> value:value:
> truncated
> truncated
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> value:value:
> at:
> at:
> at:put:
> at:put:
> at:
> value:value:
> truncated
> truncated
> sort:to:
> sort:to:
> sort:to:
> sort:to:
> truncated
> truncated
> truncated
> truncated
> bitShiftMagnitude:
> timesTwoPower:
> basicNew
> allInstancesOrNil
> value:
> value:
> **StackOverflow**
> size
> primNewFaceFromExternalMemory:size:index:
>
> stack page bytes 4096 available headroom 2788 minimum unused headroom 3020
>
> (Segmentation fault)
July 30, 2016
Re: [Pharo-dev] Regular expression to match URIs
by stepharo
thanks
We should add that as an example in the package :)
Stef
Le 29/7/16 à 16:13, Casimiro - GMAIL a écrit :
> If someone is in need to parse URIs, then the following regex handle it:
>
> | regStr regex |
>
> regStr :=
> '((([a-z]\w+\:)', "Match URL protocol and
> colon"
> '(/|//|///|[A-Za-z0-9%]))', "Match 1-3 slashes or
> single letter or digit or %"
> '|', "or"
> '(((www\d)|(www\d\d)|(www\d\d\d))[.])', "match www ou
> www[1-999] followed by ."
> '|', "or"
> '([A-Za-z0-9._\-]+[.]([a-z][a-z]|[a-z][a-z][a-z]|[a-z][a-z][a-z][a-z])/))',
> "domain name"
> '(([^\s()<>]+', "run of non-space, non ()<>"
> '|', "or"
> '\(([^\s()<>]+|(\([^\s()<>]+\)))*\))+)', "balanced parens up to two
> levels"
> '(\(([^\s()<>]+|(\([^\s()<>]+\)))*\)', "end with balanced aprens up
> to 2 levels"
> '|', "or"
> '[^\s`!()[]{};:''".,<>?«»ââââ])'. "not a space or one of
> these punct chars"
>
> regex := RxMatcher forString: regStr.
>
> --
> The information contained in this message is confidential and intended
> to the recipients specified in the headers. If you received this
> message by error, notify the sender immediately. The unauthorized use,
> disclosure, copy or alteration of this message are strictly forbidden
> and subjected to civil and criminal sanctions.
>
> ==
>
> This email may be signed using PGP key *ID: 0x4134A417*
July 30, 2016
Re: [Pharo-dev] Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
by stepharo
I will review anything you write.
I should redo the tutorial to get better at parsing.
Stef
Le 29/7/16 à 23:22, Thierry Goubier a écrit :
>
>
> Le 29/07/2016 à 21:18, stepharo a écrit :
>> Thierry
>>
>> I started a Smacc chapter in the PharoInProgress book.
>
> Ok. I'll have a look if I can contribute during my holidays...
>
> Thierry
>
>
>>
>> Stef
>>
>>
>> Le 29/7/16 à 15:56, Thierry Goubier a écrit :
>>>
>>>
>>> 2016-07-29 15:32 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>>> <mailto:sven@stfx.eu>>:
>>>
>>>
>>> > On 29 Jul 2016, at 14:23, Thierry Goubier
>>> <thierry.goubier(a)gmail.com <mailto:thierry.goubier@gmail.com>>
>>> wrote:
>>> >
>>> > Hi Sven,
>>> >
>>> > I'd put RB + SmaCC among the lot. But I consider that really
>>> non-trivial : the pattern language of RB (and the underlying
>>> pattern matching and unification algorithm) is top notch, and how
>>> SmaCC builds on RB to virtually generate code / optimise code /
>>> then compile is nothing short of amazing.
>>> >
>>> > SmaCC comes with a pattern matching/unification algorithm over
>>> ASTs + auto-generation of AST code + visitor + tree equality + the
>>> equivalent of Flex/Bison(*) + a GUI in 11401 lines of code.
>>>
>>> Well, you don't need to convince me that there is some really
>>> magic code out there, thanks for pointing this out. People should
>>> really do more effort to promote the stuff they like, by writing
>>> some nice accessible article about it. (Hint, hint).
>>>
>>>
>>> Understood :)
>>>
>>>
>>> The problem is that even though Smalltalk itself is simple, the
>>> whole environment, being super dynamic/flexible, is not. It scares
>>> a lot of people that they cannot really grab and hold the code. It
>>> is only once you get beyond that initial hurdle (which also
>>> requires you to unlearn/learn a new approach), that you can start
>>> to explore and appreciate all the good stuff. I am still not sure
>>> how we can make this clear to newcomers, but it feels like a
>>> critical step.
>>>
>>>
>>> Maybe there is a question of coding style coupled with the tools?
>>>
>>> Thierry
>>>
>>>
>>>
>>> > Thierry
>>> >
>>> > (*) And a true equivalent, with LR, LALR and GLR !
>>> >
>>> > 2016-07-29 14:05 GMT+02:00 Sven Van Caekenberghe <sven(a)stfx.eu
>>> <mailto:sven@stfx.eu>>:
>>> > <Social Media Marketing>
>>> >
>>> > The following interesting question/thread could use some more
>>> comments/votes:
>>> >
>>> > Ask HN: Examples of elegant, non-trivial Smalltalk? | Hacker News
>>> >
>>> > > https://news.ycombinator.com/item?id=12185892
>>> <https://news.ycombinator.com/item?id=12185892>
>>> >
>>> > Sven
>>> >
>>>
>>>
>>>
>>
>
>
>
July 30, 2016
Re: [Pharo-dev] Loading an image crashes the VM
by Holger Freyther
> On 17 Mar 2016, at 22:16, Peter Uhnák <i.uhnak(a)gmail.com> wrote:
Hi!
> I got this error maybe once or twice maybe a year ago on linux, but I had a lot of windows opened (like 20 or 30), and when I got back to big screen it was ok again.
I am now seeing this with a Pharo50 build on a Jenkins setup.
+ unzip pharo.zip
Archive: pharo.zip
inflating: Pharo-50761.image
inflating: Pharo-50761.changes
+ mv Pharo-50761.image App.image
+ mv Pharo-50761.changes App.changes
+ create_symlinks
+ export LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
+ LD_LIBRARY_PATH=/usr/lib/i386-linux-gnu/:/build/build
+ ln -sf /usr/lib/i386-linux-gnu/libcrypto.so.1.0.0 libcrypto.so
+ /build/build/vm/pharo --nodisplay App.image eval --save '(NonInteractiveTranscript onFileNamed: #stdout)' install
Transcript
+ /build/build/vm/pharo --nodisplay App.image clean --save
Segmentation fault Fri Jul 29 19:34:57 2016
/build/build/vm/pharo
pharo VM version: 5.0 #1 Wed May 4 11:54:28 CEST 2016 gcc 4.6.3 [Production Spur ITHB VM]
Built from: CoInterpreter VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
With: StackToRegisterMappingCogit VMMaker.oscog-eem.1855 uuid: d8e4a3c2-a3bf-4adc-b224-8012903a1ef4 May 4 2016
Revision:
https://github.com/pharo-project/pharo-vm.git
Commit: b8ec25a570d7539653e1d793e97609adb509aaed Date: 2016-05-04 11:14:22 +0200 By: Esteban Lorenzano <estebanlm(a)gmail.com> Jenkins build #589
Build host: Linux pharo-linux 3.2.0-31-generic-pae #50-Ubuntu SMP Fri Sep 7 16:39:45 UTC 2012 i686 i686 i386 GNU/Linux
plugin path: /build/build/vm/ [default: /build/build/vm/]
C stack backtrace & registers:
eax 0xff969e64 ebx 0xff969d80 ecx 0xff969e18 edx 0xff969dcc
edi 0xff969c50 esi 0xff969c50 ebp 0xff969ce8 esp 0xff969d34
eip 0xff969f48
*[0xff969f48]
/build/build/vm/pharo[0x80c0912]
/build/build/vm/pharo[0x80c0c76]
linux-gate.so.1(__kernel_rt_sigreturn+0x0)[0xf770bd50]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Stream_ReadULong+0x6e)[0xf743342e]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x524b7)[0xf74764b7]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x23daa)[0xf7447daa]
/usr/lib/i386-linux-gnu/libfreetype.so.6(+0x10ecb)[0xf7434ecb]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_Open_Face+0x2d9)[0xf7437bd9]
/usr/lib/i386-linux-gnu/libfreetype.so.6(FT_New_Memory_Face+0x5a)[0xf74381ea]
/build/build/vm/libFT2Plugin.so(primitiveNewMemoryFaceFromExternalMemoryAndIndex+0xfa)[0xf74da15a]
/build/build/vm/pharo[0x80906a0]
/build/build/vm/pharo(interpret+0x51c6)[0x80b5886]
/build/build/vm/pharo[0x80b5e09]
/build/build/vm/pharo(interpret+0x1f6)[0x80b08b6]
/build/build/vm/pharo(main+0x2b2)[0x805cb92]
/lib/i386-linux-gnu/i686/cmov/libc.so.6(__libc_start_main+0xf3)[0xf7504a63]
/build/build/vm/pharo[0x805ceb1]
/build/build/vm/pharo[0x812c328]
Smalltalk stack dump:
0xff96f21c I FreeTypeFace(FT2Face)>newFaceFromExternalMemory:index: 0xc6dc808: a(n) FreeTypeFace
0xff96f244 I FreeTypeFace>create 0xc6dc808: a(n) FreeTypeFace
0xff96f264 I FreeTypeFace>validate 0xc6dc808: a(n) FreeTypeFace
0xff96f284 I FreeTypeFont>face 0xa3ed1b0: a(n) FreeTypeFont
0xff96f2c0 I FreeTypeFontProvider>fontFor:familyName: 0xae5a1d0: a(n) FreeTypeFontProvider
0xff96f2ec M [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f310 M OrderedCollection>do: 0xaf65a20: a(n) OrderedCollection
0xff96f33c I [] in LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f360 M Array(SequenceableCollection)>do: 0xa3ec340: a(n) Array
0xff96f388 I LogicalFontManager>bestFontFor:whenFindingAlternativeIgnoreAll: 0xaf65a10: a(n) LogicalFontManager
0xff96f3b0 I LogicalFontManager>bestFontFor: 0xaf65a10: a(n) LogicalFontManager
0xff96f3d4 I LogicalFont>findRealFont 0xaf659d8: a(n) LogicalFont
0xff96f3f4 I LogicalFont>realFont 0xaf659d8: a(n) LogicalFont
0xff96f414 I LogicalFont>height 0xaf659d8: a(n) LogicalFont
0xff96f434 I TextStyle>newFontArray: 0xa3ec2c8: a(n) TextStyle
0xff96f458 I TextStyle class>fontArray: 0xaccf538: a(n) TextStyle class
0xff96f474 M [] in LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
0xff96f48c M Dictionary(Collection)>detect:ifFound:ifNone: 0xa3ebce0: a(n) Dictionary
0xff96f4b0 M Dictionary(Collection)>detect:ifNone: 0xa3ebce0: a(n) Dictionary
0xff96f4d8 I LogicalFont(AbstractFont)>textStyle 0xaf659d8: a(n) LogicalFont
0xff96f4fc I TextMorphForFieldView(TextMorph)>font: 0xa3e6ee0: a(n) TextMorphForFieldView
0xff96f520 I PluggableTextFieldMorph>beDecrypted 0xc66bfb0: a(n) PluggableTextFieldMorph
0xff96f540 I PluggableTextFieldMorph>initialize 0xc66bfb0: a(n) PluggableTextFieldMorph
0xc6d95e8 s PluggableTextFieldMorph class(Behavior)>new
0xc6d96a8 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:font:help:entryCompletion:
0xc6d9868 s Pharo3Theme(UITheme)>newAutoAcceptTextEntryIn:for:get:set:class:getEnabled:help:entryCompletion:
0xc6d9a48 s RubFindReplaceDialogWindow(StandardWindow)>newAutoAcceptTextEntryFor:get:set:class:getEnabled:help:entryCompletion:
0xc6d9b08 s RubFindReplaceDialogWindow>newFindTextEntryMorph
0xc6d9b68 s RubFindReplaceDialogWindow>newContentMorph
0xc6d9bc8 s RubFindReplaceDialogWindow(DialogWindow)>newMainPanel
0xc6d9c28 s RubFindReplaceDialogWindow(DialogWindow)>addMainPanel
0xc6d9c88 s RubFindReplaceDialogWindow(DialogWindow)>addInitialPanel
0xc6d9ce8 s RubFindReplaceDialogWindow(DialogWindow)>initialize
0xc6d9d48 s RubFindReplaceDialogWindow class(Behavior)>new
0xc6d9da8 s RubFindReplaceService>newDialog
0xc6d9e08 s RubFindReplaceService>dialog
0xc6d9e68 s RubFindReplaceService>dialogIsActiveFor:
0xc6d9ec8 s RubEditingArea(RubAbstractTextArea)>hasFindReplaceFocus
0xc6d9f28 s RubTextScrollPane>drawSubmorphsOn:
0xc6d9f88 s [] in RubTextScrollPane(Morph)>fullDrawOn:
0xc6d9fe8 s FormCanvas>roundCornersOf:in:during:
0xc6da048 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6da0a8 s [] in RubTextScrollPane(Morph)>fullDrawOn:
0xc6da108 s BlockClosure>on:do:
0xc6da168 s RubTextScrollPane(Morph)>fullDrawOn:
0xc6da1c8 s FormCanvas(Canvas)>fullDraw:
0xc6da228 s FormCanvas(Canvas)>fullDrawMorph:
0xc6da288 s [] in RubScrolledTextMorph>drawSubmorphsOn:
0xc6da2e8 s Array(SequenceableCollection)>reverseDo:
0xc6da348 s [] in RubScrolledTextMorph>drawSubmorphsOn:
0xc6da3a8 s FormCanvas>clipBy:during:
0xc6da408 s RubScrolledTextMorph>drawSubmorphsOn:
0xc6da468 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da4c8 s FormCanvas>roundCornersOf:in:during:
0xc6da528 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6da588 s [] in RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da5e8 s BlockClosure>on:do:
0xc6da648 s RubScrolledTextMorph(Morph)>fullDrawOn:
0xc6da6a8 s FormCanvas(Canvas)>fullDraw:
0xc6da708 s FormCanvas(Canvas)>fullDrawMorph:
0xc6da768 s [] in StandardWindow(Morph)>drawSubmorphsOn:
0xc6da7c8 s Array(SequenceableCollection)>reverseDo:
0xc6da828 s [] in StandardWindow(Morph)>drawSubmorphsOn:
0xc6da888 s FormCanvas>clipBy:during:
0xc6da8e8 s StandardWindow(Morph)>drawSubmorphsOn:
0xc6da948 s [] in StandardWindow(Morph)>fullDrawOn:
0xc6da9a8 s FormCanvas>roundCornersOf:in:during:
0xc6daa08 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6daa68 s [] in StandardWindow(Morph)>fullDrawOn:
0xc6daac8 s BlockClosure>on:do:
0xc6dab28 s StandardWindow(Morph)>fullDrawOn:
0xc6dab88 s FormCanvas(Canvas)>fullDraw:
0xc6dabe8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dac48 s [] in PanelMorph(Morph)>drawSubmorphsOn:
0xc6daca8 s Array(SequenceableCollection)>reverseDo:
0xc6dad08 s [] in PanelMorph(Morph)>drawSubmorphsOn:
0xc6dad68 s FormCanvas>clipBy:during:
0xc6dadc8 s PanelMorph(Morph)>drawSubmorphsOn:
0xc6dae28 s [] in PanelMorph(Morph)>fullDrawOn:
0xc6dae88 s FormCanvas>roundCornersOf:in:during:
0xc6daee8 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6daf48 s [] in PanelMorph(Morph)>fullDrawOn:
0xc6dafa8 s BlockClosure>on:do:
0xc6db008 s PanelMorph(Morph)>fullDrawOn:
0xc6db068 s FormCanvas(Canvas)>fullDraw:
0xc6db0c8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6db128 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db188 s Array(SequenceableCollection)>reverseDo:
0xc6db1e8 s [] in TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db248 s TabGroupMorph(Morph)>drawSubmorphsOn:
0xc6db2a8 s [] in TabGroupMorph(Morph)>fullDrawOn:
0xc6db308 s FormCanvas>roundCornersOf:in:during:
0xc6db368 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6db3c8 s [] in TabGroupMorph(Morph)>fullDrawOn:
0xc6db428 s BlockClosure>on:do:
0xc6db488 s TabGroupMorph(Morph)>fullDrawOn:
0xc6db4e8 s TabGroupMorph>fullDrawOn:
0xc6db548 s FormCanvas(Canvas)>fullDraw:
0xc6db5a8 s FormCanvas(Canvas)>fullDrawMorph:
0xc6db608 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db668 s Array(SequenceableCollection)>reverseDo:
0xc6db6c8 s [] in GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db728 s GroupWindowMorph(Morph)>drawSubmorphsOn:
0xc6db788 s [] in GroupWindowMorph(Morph)>fullDrawOn:
0xc6db7e8 s FormCanvas>roundCornersOf:in:during:
0xc6db848 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6db8a8 s [] in GroupWindowMorph(Morph)>fullDrawOn:
0xc6db908 s BlockClosure>on:do:
0xc6db968 s GroupWindowMorph(Morph)>fullDrawOn:
0xc6db9c8 s FormCanvas(Canvas)>fullDraw:
0xc6dba28 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dba88 s [] in SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbae8 s Array(SequenceableCollection)>reverseDo:
0xc6dbb48 s [] in SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbba8 s FormCanvas>clipBy:during:
0xc6dbc08 s SystemWindow(Morph)>drawSubmorphsOn:
0xc6dbc68 s [] in SystemWindow(Morph)>fullDrawOn:
0xc6dbcc8 s FormCanvas>roundCornersOf:in:during:
0xc6dbd28 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6dbd88 s [] in SystemWindow(Morph)>fullDrawOn:
0xc6dbde8 s BlockClosure>on:do:
0xc6dbe48 s SystemWindow(Morph)>fullDrawOn:
0xc6dbea8 s FormCanvas(Canvas)>fullDraw:
0xc6dbf08 s FormCanvas(Canvas)>fullDrawMorph:
0xc6dbf68 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc068 s Rectangle>allAreasOutsideList:startingAt:do:
0xc6dc0c8 s Rectangle>allAreasOutsideList:do:
0xc6dc128 s [] in WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc228 s Array(SequenceableCollection)>do:
0xc6dc288 s WorldState>drawWorld:submorphs:invalidAreasOn:
0xc6dc388 s [] in WorldState>displayWorld:submorphs:
0xc6dc3e8 s FormCanvas>roundCornersOf:in:during:
0xc6dc448 s FormCanvas(Canvas)>roundCornersOf:during:
0xc6dc4a8 s WorldState>displayWorld:submorphs:
0xc6dc508 s WorldMorph>displayWorld
0xc6dc568 s [] in WorldState>displayWorldSafely:
0xc6dc5c8 s BlockClosure>on:do:
0xc6dc628 s BlockClosure>ifError:
0xc6dc688 s WorldState>displayWorldSafely:
0xc6dc6e8 s WorldState>doOneCycleNowFor:
0xc6dc748 s WorldState>doOneCycleFor:
0xc6dc7a8 s WorldMorph>doOneCycle
0xc35ca30 s [] in MorphicUIManager>spawnNewProcess
0xc167510 s [] in BlockClosure>newProcess
Most recent primitives
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
replaceFrom:to:with:startingAt:
at:
objectAt:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
basicSize
new:
basicSize
basicAt:
replaceFrom:to:with:startingAt:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
at:
stringHash:initialHash:
basicNew
basicIdentityHash
grow
grow
atLeast:
at:put:
at:put:
stringHash:initialHash:
at:
species
value:
value:
shallowCopy
stringHash:initialHash:
at:
value:
shallowCopy
stringHash:initialHash:
add:
value:
value:
value:
value:
shallowCopy
stringHash:initialHash:
value:
value:
class
value:
class
value:
class
class
value:
shallowCopy
stringHash:initialHash:
stringHash:initialHash:
stringHash:initialHash:
stringHash:initialHash:
value:
stringHash:initialHash:
at:
at:put:
at:
stringHash:initialHash:
at:
at:
at:put:
at:put:
at:
stringHash:initialHash:
at:
stringHash:initialHash:
value
value
value
\\
\\
stringHash:initialHash:
=
stringHash:initialHash:
at:
value:
at:
at:
at:
at:
at:
basicNew
at:
basicNew
value:
value:
value
basicNew
value
primCurrentLibrary
stringHash:initialHash:
compare:with:collated:
value:
value:
at:
at:
value:value:
**StackOverflow**
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
closenessVectorForStretch:slant:weight:
class
raisedTo:
raisedTo:
bitAnd:
*
*
*
asFloat
sqrt
truncated
sqrt
sqrt
sqrt
sqrt
sqrt
bitShift:
**PrimitiveFailure**
bitShiftMagnitude:
timesTwoPower:
>=
at:
value:value:
first
first
+
+
+
truncated
sqrt
sqrt
sqrt
sqrt
sqrt
truncated
value:value:
truncated
truncated
value:value:
**PrimitiveFailure**
bitShiftMagnitude:
timesTwoPower:
value:value:
**PrimitiveFailure**
basicAt:
bitShiftMagnitude:
basicAt:
bitAnd:
bitShiftMagnitude:
basicAt:
+
bitOr:
digitCompare:
bitShiftMagnitude:
bitShiftMagnitude:
digitCompare:
<
perform:with:
digitMultiply:neg:
*
<
at:
value:value:
truncated
truncated
at:
value:value:
truncated
truncated
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
value:value:
at:
at:
at:put:
at:put:
at:
value:value:
truncated
truncated
sort:to:
sort:to:
sort:to:
sort:to:
truncated
truncated
truncated
truncated
bitShiftMagnitude:
timesTwoPower:
basicNew
allInstancesOrNil
value:
value:
**StackOverflow**
size
primNewFaceFromExternalMemory:size:index:
stack page bytes 4096 available headroom 2788 minimum unused headroom 3020
(Segmentation fault)
July 30, 2016