[Openmcl-devel] Application bundles and the interface database

Gary Byers gb at clozure.com
Fri Oct 28 09:26:26 PDT 2005



On Fri, 28 Oct 2005, Tord Kallqvist Romstad wrote:

> Gary Byers <gb at clozure.com> writes:
>
>> On Fri, 28 Oct 2005, Tord Kallqvist Romstad wrote:
>>
>>> When running the iMac-compiled bundle on the Cube, (FIND-CLASS
>>> 'NS:+NS-OBJECT+) evaluates to:
>>>
>>> #<OBJC:OBJC-METACLASS NS:+NS-OBJECT (#xA28876FC)>
>>>
>>> while the error message reads:
>>>
>>>> Error: Class #<A Mac Pointer #xA28816FC> isn't recognized.
>>>> While executing: CANONICALIZE-REGISTERED-METACLASS
>>>
>>> When trying to run the Cube-compiled bundle on the iMac, I get exactly
>>> the opposite:
>>>
>>> #<OBJC:OBJC-METACLASS NS:+NS-OBJECT (#xA28816FC)>
>>
>> That's certainly suspicious.  As far as I know, #xA28816FC isn't
>> a class or metaclass object address in 10.4.2, and NS:+NS-OBJECT
>> seems to have addres #xA28876FC.
>
> Are you sure this depends only on the OS version, and cannot vary
> between different Macs running the same OS version?  It seems to me
> that the addresses are not the same on my two Macs.  I tried to start
> a fresh OpenMCL session from the command line and did a
> (REQUIRE "COCOA") followed by (FIND-CLASS 'NS:+NS-OBJECT) on both
> machines.  My iMac returns
>
> #<OBJC:OBJC-METACLASS NS:+NS-OBJECT (#xA28876FC)>
>
> while the old G4 Cube returns
>
> #<OBJC:OBJC-METACLASS NS:+NS-OBJECT (#xA28816FC)>

I'm not sure of that, but it shouldn't matter.  REVIVE-OBJC-CLASSES
is supposed to ensure that the class pointers are correct at runtime,
and shouldn't care whether those addresses change across SAVE-APPLICATION.






More information about the Openmcl-devel mailing list