Failed
unix-32 / Tests-unix-32 / Unix32.Glamour.Tests.Morphic.GLMUpdateMorphicTest.testAnnouncerUnregistration (from Glamour-Tests-Morphic)
Error Message
1
Stacktrace
SubscriptOutOfBounds 1 OrderedCollection(Object)>>errorSubscriptBounds: OrderedCollection>>at: RubParagraph>>characterBlockForIndex: Message>>sendTo: [ aMessage sendTo: next ] in RubOpeningClosingDelimiterDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: BlockClosure>>on:do: RubOpeningClosingDelimiterDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: Message>>sendTo: [ aMessage sendTo: next ] in RubExtraSelectionDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: BlockClosure>>on:do: RubExtraSelectionDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: Message>>sendTo: [ aMessage sendTo: next ] in RubCurrentLineBarDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: BlockClosure>>on:do: RubCurrentLineBarDecorator(RubParagraphDecorator)>>doesNotUnderstand: #characterBlockForIndex: RubEditingState>>markIndex:pointIndex: [ self editingState markIndex: markIndex pointIndex: pointIndex ] in RubEditingArea(RubAbstractTextArea)>>markIndex:pointIndex: RubEditingArea(RubAbstractTextArea)>>handleSelectionChange: RubEditingArea(RubAbstractTextArea)>>markIndex:pointIndex: RubEditingArea(RubAbstractTextArea)>>recomputeSelection [ self wrapped ifTrue: [ (bounds notNil and: [ bounds width = aPoint x ]) ifTrue: [ ^ self ]. super extent: ((self paragraph withoutDecorator extentFromClientBottomRight: aPoint) max: self minimumExtent). self recomputeSelection ] ] in RubEditingArea(RubAbstractTextArea)>>extent: RubEditingArea(RubAbstractTextArea)>>handleBoundsChange: RubEditingArea(RubAbstractTextArea)>>extent: RubEditingArea(Morph)>>width: RubTextScrollPane>>fitScrollTargetWidth RubTextScrollPane>>updateScrollbars RubTextScrollPane(GeneralScrollPane)>>doLayoutIn: [ self doLayoutIn: self layoutBounds ] in RubTextScrollPane(Morph)>>computeFullBounds BlockClosure>>on:do: RubTextScrollPane(Morph)>>computeFullBounds RubTextScrollPane(Morph)>>fullBounds [:m | | subBox | (m visible) ifTrue: [ subBox := m fullBounds. box ifNil:[box := subBox copy] ifNotNil:[box := box quickMerge: subBox]]] in RubScrolledTextMorph(Morph)>>submorphBounds Array(SequenceableCollection)>>do: RubScrolledTextMorph(Morph)>>submorphBounds RubScrolledTextMorph(Morph)>>privateFullBounds RubScrolledTextMorph(Morph)>>doLayoutIn: [ self doLayoutIn: self layoutBounds ] in RubScrolledTextMorph(Morph)>>computeFullBounds BlockClosure>>on:do: RubScrolledTextMorph(Morph)>>computeFullBounds RubScrolledTextMorph(Morph)>>fullBounds [:m | | subBox | (m visible) ifTrue: [ subBox := m fullBounds. box ifNil:[box := subBox copy] ifNotNil:[box := box quickMerge: subBox]]] in GLMPanelMorph(Morph)>>submorphBounds Array(SequenceableCollection)>>do: GLMPanelMorph(Morph)>>submorphBounds GLMPanelMorph(Morph)>>privateFullBounds GLMPanelMorph(Morph)>>doLayoutIn: [ self doLayoutIn: self layoutBounds ] in GLMPanelMorph(Morph)>>computeFullBounds BlockClosure>>on:do: GLMPanelMorph(Morph)>>computeFullBounds GLMPanelMorph(Morph)>>fullBounds [:m | | subBox | (m visible) ifTrue: [ subBox := m fullBounds. box ifNil:[box := subBox copy] ifNotNil:[box := box quickMerge: subBox]]] in LazyTabGroupMorph(Morph)>>submorphBounds Array(SequenceableCollection)>>do: LazyTabGroupMorph(Morph)>>submorphBounds LazyTabGroupMorph(Morph)>>privateFullBounds LazyTabGroupMorph(Morph)>>changed LazyTabGroupMorph(Morph)>>extent: LazyTabGroupMorph(Morph)>>bounds: LazyTabGroupMorph(Morph)>>layoutInBounds: TableLayout>>layoutTopToBottom:in: TableLayout>>layout:in: GLMPanelMorph(Morph)>>doLayoutIn: [ self doLayoutIn: self layoutBounds ] in GLMPanelMorph(Morph)>>computeFullBounds BlockClosure>>on:do: GLMPanelMorph(Morph)>>computeFullBounds GLMPanelMorph(Morph)>>fullBounds GLMPanelMorph(Morph)>>privateInvalidateMorph: GLMPanelMorph(Morph)>>privateAddMorph:atIndex: GLMPanelMorph(Morph)>>addMorphFront: GLMPanelMorph(Morph)>>addMorph: GLMPanelMorph(Morph)>>addMorph:fullFrame: GLMMorphicPaneRenderer>>renderContainerFor: GLMMorphicPaneRenderer>>actOnMatchingPresentationChanged: MessageSend>>value: MessageSend>>cull: MessageSend>>cull:cull: [action cull: anAnnouncement cull: announcer] in AnnouncementSubscription>>deliver: BlockClosure>>on:do: BlockClosure>>on:fork: AnnouncementSubscription>>deliver: [ subscription deliver: anAnnouncement ] in SubscriptionRegistry>>deliver:to:startingAt: BlockClosure>>ifCurtailed: SubscriptionRegistry>>deliver:to:startingAt: SubscriptionRegistry>>deliver:to: SubscriptionRegistry>>deliver: GLMPane(Announcer)>>announce: GLMPane(GLMAnnouncer)>>announce: GLMPane(GLMLoggedObject)>>announce: GLMPane>>notingPresentationChangeDo: GLMPanePort(GLMBoundPort)>>notingPresentationChangeDo: GLMTransmission>>transmitIn: [:each | each transmitIn: aPortEvent transmissionContext copy ] in GLMTabulator(GLMBrowser)>>outerPortEvent: OrderedCollection>>do: GLMTabulator(GLMBrowser)>>outerPortEvent: [:each| each outerPortEvent: aPortEvent] in GLMCompositePresentation>>outerPortEvent: OrderedCollection>>do: GLMCompositePresentation>>do: GLMCompositePresentation>>outerPortEvent: GLMPane>>portEvent: [ self silentValue: anObject. self pane portEvent: (GLMPortEvent on: self previouslyValued: oldValue in: aTransmissionContext) ] in GLMPanePort>>changeValueTo:in: GLMPane>>notingPresentationChangeDo: GLMPanePort>>changeValueTo:in: GLMPanePort>>value:in: GLMPanePort(GLMPort)>>value: GLMTabulator(GLMPresentation)>>entity: GLMUpdateMorphicTest>>testAnnouncerUnregistration GLMUpdateMorphicTest(TestCase)>>performTest