[Pharo-project] strange loop

Stéphane Ducasse stephane.ducasse at inria.fr
Sun May 1 15:38:36 EDT 2011


this is strange

I was trying to code a simple list of method browser and my browser seems to 

MorphExtension>>valueOfProperty: aSymbol 
	"answer the value of the receiver's property named aSymbol"
	^ extension ifNotNil: [extension valueOfProperty: aSymbol]

I end up in a endless loop

update: aParameter 

	|state|
	aParameter  ifNil: [^self].
	getLabelSelector ifNotNil: [
		aParameter == getLabelSelector ifTrue: [
			(self labelMorph respondsTo: #font)
				ifTrue: [self label: (model perform: getLabelSelector) font: self labelMorph font]
				ifFalse: [self label: (model perform: getLabelSelector)]]].
	state := self getModelState.
	(state ~= (self valueOfProperty: #lastState) or: [
			^^^

when I inspect self I get a PluggableButtonMorph
but the method shown in the debugger is MoprhExtension??????

	getStateSelector isNil and: [aParameter == #onOffColor]])
		ifTrue: [self color: self colorToUse.
				self setProperty: #lastState toValue: state].
	aParameter == getEnabledSelector ifTrue: [^self enabled: (model perform: getEnabledSelector)].
	getColorSelector ifNotNil: [ | cc |
		color = (cc := model perform: getColorSelector) 
			ifFalse: [
				color := cc.
				self onColor: color offColor: color.
				self changed ]].



More information about the Pharo-dev mailing list