[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: crash in NSPathUtilies / UserDefaults (from PikoPixel)
From: |
David Chisnall |
Subject: |
Re: crash in NSPathUtilies / UserDefaults (from PikoPixel) |
Date: |
Fri, 23 Oct 2015 15:25:48 +0100 |
On 23 Oct 2015, at 15:12, Riccardo Mottola <address@hidden> wrote:
>
> Fred Kiefer wrote:
>> Of course this works with a normal project. What happens in PikoPixel is
>> that the +load methods get executed before the user defaults and process
>> arguments are properly set up and there seem to be calls to autorelease
>> triggered by these methods and at that time the autorelease pool
>> infrastructure is not in place with the gcc runtime. This causes an NSLog
>> call to report this issue and this fails because the user defaults aren't
>> setup.
>
> the fun thing is thus that we don't have just a gcc vs. clang issue, but
> something that is also OS dependent? or something random?
> On Linux, Windows and Solaris, with gcc, PP starts up.
> On NetBSD, with gcc, it crashes as seen.
+load order is dependent on a large number of things. It is completely
undefined to rely on anything in +load other than the superclass existing.
PikoPixel appears to do a lot of stuff in +load that could be better handled in
+initialize.
David
-- Sent from my Difference Engine