Sq 3.9-7061 broken sources

Marcus Denker denker at iam.unibe.ch
Mon Oct 9 22:50:43 UTC 2006


On 10.10.2006, at 00:36, tim Rowledge wrote:

> I've been looking at cleaning up the source pointers so that we can  
> consider having large source/changes files (or other access  
> methods) and discovered some nasty problems with 3.9-7061
>
> Most obvious is that some 201 methods seem to have 0 source  
> pointers. Now this might indicate that some have been set to have  
> compressed in-image source (though there really shouldn't be any in  
> a standard image) but in at least a few randomly chosen cases you  
> get the error dialogue complaining about a buggered source file.  
> The afflicted classes are :-
>  a Set(#PlayWithMe1 #BrowserProvider #Preferences #WorldMenuProvider)
>
> Consider -
> BrowserProvider >> browserClassMenushortcut. It displays perfectly  
> well in the browser because it can decompile ok. Still shouldn't  
> have no source pointer though. Its method properties are nil  
> properties, empty array pragmas and a suitable selector
>
> To find the relevant methods try
>  (SystemNavigation default allMethodsNoDoitsSelect:[:cm|
> 		cm sourcePointer = 0])
> and inspect.
>

In Preferences>>class there is:

compileAccessMethodForPreference: aPreference
	"Compile an accessor method for the given preference"

	self class compileSilently: (aPreference name, '
	^ self valueOfFlag: #', aPreference name, ' ifAbsent: [',  
aPreference defaultValue storeString, ']') classified: 'standard  
queries'


This will result in methods with a trailer of #(0 0 0 0)...

    Marcus



More information about the Squeak-dev mailing list