[squeak-dev] Morphic yellow cross of death
Nicolas Cellier
nicolas.cellier.aka.nice at gmail.com
Mon Sep 16 21:26:10 UTC 2013
Lately I have many instances of these yellow cross over red background that
happens when a low level morphic error is encountered.
It seems related to a MultiNewParagraph lines being nil like in following
stack example.
I don't know if it can help a morphic guru, but I just hate those stateful
behavior with volatile states...
Really hard to debug/understand!!!
UndefinedObject(Object)>>error:
Receiver: nil
Arguments and temporary variables:
aString: 'MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNone:'
Receiver's instance variables:
nil
[] in WorldState>>displayWorldSafely:
Receiver: a WorldState
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
hands: {a HandMorph(3216)}
activeHand: a HandMorph(3216)
viewBox: 0 at 0 corner: 1113 at 867
canvas: a FormCanvas on: DisplayScreen(1113x867x32)
damageRecorder: a DamageRecorder
stepList: a Heap(StepMessage(#stepAt: ->
3PButton(#toggleProjectLocalness 739))...etc...
lastStepTime: 690046
lastStepMessage: nil
lastCycleTime: 690046
commandHistory: a CommandHistory
alarms: a MorphicAlarmQueue()
lastAlarmTime: 690046
remoteServer: nil
multiCanvas: nil
BlockClosure>>cull:cull:
Receiver: [closure] in WorldState>>displayWorldSafely:
Arguments and temporary variables:
firstArg: 'MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNone:'
secondArg: nil
Receiver's instance variables:
outerContext: WorldState>>displayWorldSafely:
startpc: 97
numArgs: 2
[] in BlockClosure>>ifError:
Receiver: [closure] in WorldState>>displayWorldSafely:
Arguments and temporary variables:
errorHandlerBlock: MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNon...etc...
ex: [closure] in WorldState>>displayWorldSafely:
Receiver's instance variables:
outerContext: WorldState>>displayWorldSafely:
startpc: 90
numArgs: 0
BlockClosure>>cull:
Receiver: [closure] in BlockClosure>>ifError:
Arguments and temporary variables:
firstArg: MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNone:
Receiver's instance variables:
outerContext: BlockClosure>>ifError:
startpc: 40
numArgs: 1
[] in MethodContext(ContextPart)>>handleSignal:
Receiver: BlockClosure>>on:do:
Arguments and temporary variables:
<<error during printing>
Receiver's instance variables:
sender: BlockClosure>>ifError:
pc: 17
stackp: 3
method: (BlockClosure>>#on:do: "a CompiledMethod(680)")
closureOrNil: nil
receiver: [closure] in WorldState>>displayWorldSafely:
BlockClosure>>ensure:
Receiver: [closure] in MethodContext(ContextPart)>>handleSignal:
Arguments and temporary variables:
aBlock: [closure] in MethodContext(ContextPart)>>handleSignal:
complete: nil
returnValue: nil
Receiver's instance variables:
outerContext: MethodContext(ContextPart)>>handleSignal:
startpc: 98
numArgs: 0
MethodContext(ContextPart)>>handleSignal:
Receiver: BlockClosure>>on:do:
Arguments and temporary variables:
exception: MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNone:
val: nil
Receiver's instance variables:
sender: BlockClosure>>ifError:
pc: 17
stackp: 3
method: (BlockClosure>>#on:do: "a CompiledMethod(680)")
closureOrNil: nil
receiver: [closure] in WorldState>>displayWorldSafely:
MessageNotUnderstood(Exception)>>signal
Receiver: MessageNotUnderstood: UndefinedObject>>findBinaryIndex:ifNone:
Arguments and temporary variables:
Receiver's instance variables:
messageText: nil
tag: nil
signalContext: MessageNotUnderstood(Exception)>>signal
handlerContext: BlockClosure>>on:do:
outerContext: nil
message: findBinaryIndex: [closure] in
MultiNewParagraph(NewParagraph)>>fastFin...etc...
receiver: nil
reachedDefaultHandler: false
UndefinedObject(Object)>>doesNotUnderstand: #findBinaryIndex:ifNone:
Receiver: nil
Arguments and temporary variables:
aMessage: findBinaryIndex: [closure] in
MultiNewParagraph(NewParagraph)>>fastFi...etc...
exception: MessageNotUnderstood:
UndefinedObject>>findBinaryIndex:ifNone:
resumeValue: nil
Receiver's instance variables:
nil
MultiNewParagraph(NewParagraph)>>fastFindFirstLineSuchThat:
Receiver: a MultiNewParagraph
Arguments and temporary variables:
lineBlock: [closure] in
MultiNewParagraph(NewParagraph)>>lineIndexForPoint:
Receiver's instance variables:
text: a Text for 'evaluate: textOrStream cue: aCue ifFail:
failBlock logged: lo...etc...
textStyle: a TextStyle Bitmap DejaVu Sans 9
firstCharacterIndex: 1
container: 0 at 0 corner: 669 at 9999999
lines: {a TextLine 1 to: 67 . a TextLine 68 to: 139 . a
TextLine 140 to: 240 . ...etc...
positionWhenComposed: 0 at 0
offsetToEnd: 1089
maxRightX: 652
selectionStart: a CharacterBlock with index 278 and character
Character tab and...etc...
selectionStop: a CharacterBlock with index 278 and character
Character tab and ...etc...
wantsColumnBreaks: false
focused: true
caretRect: nil
showCaret: true
presentationText: nil
presentationLines: nil
MultiNewParagraph(NewParagraph)>>lineIndexForPoint:
Receiver: a MultiNewParagraph
Arguments and temporary variables:
aPoint: 669 at 274
i: nil
py: 274
Receiver's instance variables:
text: a Text for 'evaluate: textOrStream cue: aCue ifFail:
failBlock logged: lo...etc...
textStyle: a TextStyle Bitmap DejaVu Sans 9
firstCharacterIndex: 1
container: 0 at 0 corner: 669 at 9999999
lines: {a TextLine 1 to: 67 . a TextLine 68 to: 139 . a
TextLine 140 to: 240 . ...etc...
positionWhenComposed: 0 at 0
offsetToEnd: 1089
maxRightX: 652
selectionStart: a CharacterBlock with index 278 and character
Character tab and...etc...
selectionStop: a CharacterBlock with index 278 and character
Character tab and ...etc...
wantsColumnBreaks: false
focused: true
caretRect: nil
showCaret: true
presentationText: nil
presentationLines: nil
MultiNewParagraph>>displayOn:using:at:
Receiver: a MultiNewParagraph
Arguments and temporary variables:
aCanvas: a FormCanvas on: DisplayScreen(1113x867x32)
displayScanner: a MultiDisplayScanner
somePosition: 80 at 436
visibleRectangle: 0 at 0 corner: 669 at 274
offset: 80 at 436
leftInRun: 0
line: nil
i: nil
iLimiT: nil
Receiver's instance variables:
text: a Text for 'evaluate: textOrStream cue: aCue ifFail:
failBlock logged: lo...etc...
textStyle: a TextStyle Bitmap DejaVu Sans 9
firstCharacterIndex: 1
container: 0 at 0 corner: 669 at 9999999
lines: {a TextLine 1 to: 67 . a TextLine 68 to: 139 . a
TextLine 140 to: 240 . ...etc...
positionWhenComposed: 0 at 0
offsetToEnd: 1089
maxRightX: 652
selectionStart: a CharacterBlock with index 278 and character
Character tab and...etc...
selectionStop: a CharacterBlock with index 278 and character
Character tab and ...etc...
wantsColumnBreaks: false
focused: true
caretRect: nil
showCaret: true
presentationText: nil
presentationLines: nil
FormCanvas>>paragraph:bounds:color:
Receiver: a FormCanvas on: DisplayScreen(1113x867x32)
Arguments and temporary variables:
para: a MultiNewParagraph
bounds: 0 at 0 corner: 669 at 450
c: Color black
scanner: a MultiDisplayScanner
Receiver's instance variables:
target: nil
filterSelector: nil
origin: 80 at 436
clipRect: 77 at 436 corner: 752 at 710
form: DisplayScreen(1113x867x32)
port: a GrafPort
shadowColor: nil
TextMorphForEditView(TextMorph)>>drawOn:
Receiver: a TextMorphForEditView(975)
Arguments and temporary variables:
aCanvas: a FormCanvas on: DisplayScreen(1113x867x32)
fauxBounds: 0 at 0 corner: 669 at 450
Receiver's instance variables:
bounds: 0 at 0 corner: 669 at 450
owner: a TransformMorph(1921)
submorphs: #()
fullBounds: 0 at 0 corner: 669 at 450
color: Color black
extension: a MorphExtension (1256) [other: (errorOnDraw ->
true) (blinkStart -...etc...
borderWidth: 0
borderColor: Color black
textStyle: a TextStyle Bitmap DejaVu Sans 9
text: a Text for 'evaluate: textOrStream cue: aCue ifFail:
failBlock logged: lo...etc...
wrapFlag: true
paragraph: a MultiNewParagraph
editor: a SmalltalkEditor
container: nil
predecessor: nil
successor: nil
backgroundColor: nil
margins: nil
editHistory: nil
editView: a PluggableTextMorphPlus(3589)
acceptOnCR: false
FormCanvas(Canvas)>>draw:
Receiver: a FormCanvas on: DisplayScreen(1113x867x32)
Arguments and temporary variables:
anObject: a TextMorphForEditView(975)
Receiver's instance variables:
target: nil
filterSelector: nil
origin: 80 at 436
clipRect: 77 at 436 corner: 752 at 710
form: DisplayScreen(1113x867x32)
port: a GrafPort
shadowColor: nil
FormCanvas(Canvas)>>drawMorph:
Receiver: a FormCanvas on: DisplayScreen(1113x867x32)
Arguments and temporary variables:
aMorph: a TextMorphForEditView(975)
Receiver's instance variables:
target: nil
filterSelector: nil
origin: 80 at 436
clipRect: 77 at 436 corner: 752 at 710
form: DisplayScreen(1113x867x32)
port: a GrafPort
shadowColor: nil
[] in TextMorphForEditView(Morph)>>fullDrawOn:
Receiver: a TextMorphForEditView(975)
Arguments and temporary variables:
aCanvas: a FormCanvas on: DisplayScreen(1113x867x32)
Receiver's instance variables:
bounds: 0 at 0 corner: 669 at 450
owner: a TransformMorph(1921)
submorphs: #()
fullBounds: 0 at 0 corner: 669 at 450
color: Color black
extension: a MorphExtension (1256) [other: (errorOnDraw ->
true) (blinkStart -...etc...
borderWidth: 0
borderColor: Color black
textStyle: a TextStyle Bitmap DejaVu Sans 9
text: a Text for 'evaluate: textOrStream cue: aCue ifFail:
failBlock logged: lo...etc...
wrapFlag: true
paragraph: a MultiNewParagraph
editor: a SmalltalkEditor
container: nil
predecessor: nil
successor: nil
backgroundColor: nil
margins: nil
editHistory: nil
editView: a PluggableTextMorphPlus(3589)
acceptOnCR: false
FormCanvas>>roundCornersOf:in:during:
Receiver: a FormCanvas on: DisplayScreen(1113x867x32)
Arguments and temporary variables:
aMorph: a TextMorphForEditView(975)
bounds: 0 at 0 corner: 669 at 450
aBlock: [closure] in TextMorphForEditView(Morph)>>fullDrawOn:
Receiver's instance variables:
target: nil
filterSelector: nil
origin: 80 at 436
clipRect: 77 at 436 corner: 752 at 710
form: DisplayScreen(1113x867x32)
port: a GrafPort
shadowColor: nil
--- The full stack ---
UndefinedObject(Object)>>error:
[] in WorldState>>displayWorldSafely:
BlockClosure>>cull:cull:
[] in BlockClosure>>ifError:
BlockClosure>>cull:
[] in MethodContext(ContextPart)>>handleSignal:
BlockClosure>>ensure:
MethodContext(ContextPart)>>handleSignal:
MessageNotUnderstood(Exception)>>signal
UndefinedObject(Object)>>doesNotUnderstand: #findBinaryIndex:ifNone:
MultiNewParagraph(NewParagraph)>>fastFindFirstLineSuchThat:
MultiNewParagraph(NewParagraph)>>lineIndexForPoint:
MultiNewParagraph>>displayOn:using:at:
FormCanvas>>paragraph:bounds:color:
TextMorphForEditView(TextMorph)>>drawOn:
FormCanvas(Canvas)>>draw:
FormCanvas(Canvas)>>drawMorph:
[] in TextMorphForEditView(Morph)>>fullDrawOn:
FormCanvas>>roundCornersOf:in:during:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
FormCanvas(Canvas)>>roundCornersOf:during:
TextMorphForEditView(Morph)>>fullDrawOn:
FormCanvas(Canvas)>>fullDraw:
FormCanvas(Canvas)>>fullDrawMorph:
[] in [] in TransformMorph>>drawSubmorphsOn:
Array(SequenceableCollection)>>reverseDo:
[] in TransformMorph>>drawSubmorphsOn:
FormCanvas>>transformBy:clippingTo:during:smoothing:
TransformMorph>>drawSubmorphsOn:
[] in TransformMorph(Morph)>>fullDrawOn:
FormCanvas>>roundCornersOf:in:during:
FormCanvas(Canvas)>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20130916/3947dd6c/attachment.htm
More information about the Squeak-dev
mailing list
|