[squeak-dev] [BUG]UndefinedObject(Object)>>doesNotUnderstand: #emphasis:

Ken Causey ken at kencausey.com
Wed Nov 19 20:31:25 UTC 2008


This method of reporting bugs was deprecated years and years ago, please
use our bugs database, http://bugs.squeak.org/ , for 'official' reports.
That being said it's not a bad idea to ask for sanity checks on the
mailing list first and I will consider this email to be that.

Whisker has not been updated for quite a while, it's not too surprising
that you have found a problem with it.  The version linked to in the
3.10 package universe dates back to March, 2004.  There is a slighly
newer version at http://www.squeaksource.com/Services/ but I would be
surprised if it works much better.  These were both developed with and
for Squeak 3.7.

My understanding of the Package Universe was that it was meant to only
include packages known to work.  However I'm not sure of the exact
policy, it may be that inclusion is assumed until lack of support is
positively known.  How to report a problem, I don't know.

Ken

On Wed, 2008-11-19 at 14:49 -0500, Greg A. Woods wrote:
> I'm working with an image which has most of the developer packages
> loaded from the Package Universe, including Wisker, but no other local
> changes except the beginngings of a few new classes for a new project,
> and now when I open a Selector Browser (drag Method Finder from the
> Tools flap) and, type a selector in the top left pane and press return,
> then try to choose an item in the top right pane I get the following
> crash, which seems to be the result of a fairly straight forward
> programming bug within Wisker itself.
> 
> The problem, as far as I can see, is that the
> initWithContents:prior:forList:indentLevel: method immediately does
> "self initWithContents: anObject asString font: nil emphasis: nil." but
> the initWithContents:font:emphasis: method is not expecting its font:
> parameter to be nil.
> 
> At this point I'm lost.  I don't know anything about Wisker's internals
> and I can't quite believe that a released version is so broken in this
> way.
> 
> >From the debugger window cmd-v on the
> initWithContents:prior:forList:indentLevel: method shows only one
> version, "2002-11-06 12:55:00  dew  WhiskerListItemMorph 
> {initialization}", but there's no change set, perhaps because I was
> forced to do "Smalltalk condenseChanges" while loading the many
> packages.
> 
> One more thing to check -- the version of the method that's assuming its
> font: parameter won't be null
> (WhiskerListItemMorph(IndentingListItemMorph)>>initWithContents:font:emp
> hasis:).  Ah ha!  It is much newer: "2008-09-15 16:35:00  dr 
> IndentingListItemMorph  {*ob-enhancements}".  That's probably the change
> which causes this bug, but I'm not sure where it 
> 
> Damn that condeseChanges!
> 
> ACK!  An then if I accidentally close the debug window, poof, away go
> the details from this message too!  Argh!  OK, now we start over,
> cut&paste from the old message window, and be careful to send this
> message before closing any other windows.
> 
> 19 November 2008 1:59:58 pm
> 
> VM: Mac OS - a SmalltalkImage
> Image: Squeak3.10.2 [latest update: #7179]
> 
> SecurityManager state:
> Restricted: false
> FileAccess: true
> SocketAccess: true
> Working Dir /Users/woods/Squeak/Squeak3.10.2-7179-basic
> Trusted Dir /Users/woods/Squeak/Squeak3.10.2-7179-basic
> Untrusted Dir /Users/woods/Library/Preferences/Squeak/Internet/My Squeak
> 
> UndefinedObject(Object)>>doesNotUnderstand: #emphasis:
> 	Receiver: nil
> 	Arguments and temporary variables: 
> 		aMessage: 	emphasis: 0
> 	Receiver's instance variables: 
> nil
> 
> WhiskerListItemMorph(IndentingListItemMorph)>>initWithContents:font:emph
> asis:
> 	Receiver: a WhiskerListItemMorph(2143)nil
> 	Arguments and temporary variables: 
> 		aString: 	'Object'
> 		aFont: 	nil
> 		emphasisCode: 	nil
> 	Receiver's instance variables: 
> 		bounds: 	nil
> 		owner: 	nil
> 		submorphs: 	nil
> 		fullBounds: 	nil
> 		color: 	nil
> 		extension: 	nil
> 		font: 	nil
> 		emphasis: 	nil
> 		contents: 	nil
> 		hasFocus: 	nil
> 		indentLevel: 	nil
> 		isExpanded: 	nil
> 		complexContents: 	a ClassInHierarchyWrapper(2136) on Object
> 		firstChild: 	nil
> 		container: 	a MultiSelectHierarchicalListMorph(2378)
> 		nextSibling: 	nil
> 		icon: 	nil
> 
> WhiskerListItemMorph>>initWithContents:prior:forList:indentLevel:
> 	Receiver: a WhiskerListItemMorph(2143)nil
> 	Arguments and temporary variables: 
> 		anObject: 	a ClassInHierarchyWrapper(2136) on Object
> 		priorMorph: 	nil
> 		hostList: 	a MultiSelectHierarchicalListMorph(2378)
> 		newLevel: 	0
> 	Receiver's instance variables: 
> 		bounds: 	nil
> 		owner: 	nil
> 		submorphs: 	nil
> 		fullBounds: 	nil
> 		color: 	nil
> 		extension: 	nil
> 		font: 	nil
> 		emphasis: 	nil
> 		contents: 	nil
> 		hasFocus: 	nil
> 		indentLevel: 	nil
> 		isExpanded: 	nil
> 		complexContents: 	a ClassInHierarchyWrapper(2136) on Object
> 		firstChild: 	nil
> 		container: 	a MultiSelectHierarchicalListMorph(2378)
> 		nextSibling: 	nil
> 		icon: 	nil
> 
> [] in
> MultiSelectHierarchicalListMorph(SimpleHierarchicalListMorph)>>addMorphs
> To:from:allowSorting:withExpandedItems:atLevel: {[:item |  priorMorph :=
> self indentingItemClass basicNew     initWithContent...]}
> 	Arguments and temporary variables: 
> 		morphList: 	an OrderedCollection()
> 		aCollection: 	an Array(a ClassInHierarchyWrapper(2136) on Object)
> 		sortBoolean: 	false
> 		expandedItems: 	#()
> 		newIndent: 	0
> 		priorMorph: 	nil
> 		newCollection: 	an Array(a ClassInHierarchyWrapper(2136) on Object)
> 		firstAddition: 	nil
> 		a: 	nil
> 		b: 	nil
> 		item: 	a ClassInHierarchyWrapper(2136) on Object
> 
> 
> --- The full stack ---
> UndefinedObject(Object)>>doesNotUnderstand: #emphasis:
> WhiskerListItemMorph(IndentingListItemMorph)>>initWithContents:font:emph
> asis:
> WhiskerListItemMorph>>initWithContents:prior:forList:indentLevel:
> [] in
> MultiSelectHierarchicalListMorph(SimpleHierarchicalListMorph)>>addMorphs
> To:from:allowSorting:withExpandedItems:atLevel: {[:item |  priorMorph :=
> self indentingItemClass basicNew     initWithContent...]}
>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
> Array(SequenceableCollection)>>do:
> MultiSelectHierarchicalListMorph(SimpleHierarchicalListMorph)>>addMorphs
> To:from:allowSorting:withExpandedItems:atLevel:
> MultiSelectHierarchicalListMorph(SimpleHierarchicalListMorph)>>list:
> MultiSelectHierarchicalListMorph>>on:list:selected:changeSelected:menu:k
> eystroke:
> MultiSelectHierarchicalListMorph class(SimpleHierarchicalListMorph
> class)>>on:list:selected:changeSelected:menu:
> WhiskerWindow>>addClassHierarchyPane
> WhiskerWindow>>initializeFromModel:
> WhiskerBrowser>>openAsMorphEditing:
> WhiskerBrowser class>>open
> WhiskerBrowser class>>openExistingBrowserOnClass:selector:
> Browser class>>fullOnClass:selector:
> SelectorBrowser>>classListIndex:
> PluggableListMorph>>changeModelSelection:
> PluggableListMorph>>mouseUp:
> PluggableListMorph(Morph)>>handleMouseUp:
> MouseButtonEvent>>sentTo:
> PluggableListMorph(Morph)>>handleEvent:
> MorphicEventDispatcher>>dispatchDefault:with:
> MorphicEventDispatcher>>dispatchEvent:with:
> PluggableListMorph(Morph)>>processEvent:using:
> PluggableListMorph(Morph)>>processEvent:
> PluggableListMorph>>handleFocusEvent:
> [] in HandMorph>>sendFocusEvent:to:clear: {[ActiveHand := self. 
> ActiveEvent := anEvent.  e := anEvent     transformedB...]}
> [] in PasteUpMorph>>becomeActiveDuring: {[aBlock value]}
> BlockContext>>on:do:
> PasteUpMorph>>becomeActiveDuring:
> HandMorph>>sendFocusEvent:to:clear:
> HandMorph>>sendEvent:focus:clear:
> HandMorph>>sendMouseEvent:
> HandMorph>>handleEvent:
> ...etc...
> 
> 
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20081119/ef15c3ba/attachment.pgp


More information about the Squeak-dev mailing list