|
From: | David Ayers |
Subject: | GSWeb crash upon startup [Was: Re: Eeeagh! I'm at my wits end.] |
Date: | Tue, 27 Apr 2004 10:23:26 +0200 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.6) Gecko/20040113 |
Simon Stapleton wrote:
On 27 Apr 2004, at 03:34, Adam Fedor wrote:From: Simon Stapleton [mailto:simon@tufty.co.uk]Uncaught exception NSInternalInconsistencyException, reason: GNUSTEP Internal Error: The private GNUstep function to establish the argv and environment variables was not called. Please report the error to bug-gnustep@some.bogus.orgIs there anything printed before this, like an Assert or just a Log message with the same info?Nope. It comes in (only if I make with debug=yes) all by itself. If I make without debug, it's a simple sigsegv.problem again. Now, it's obviously not a problem with GNUstep per se, as other tools seem to work OK - eogenerator, for example. I guess It's something to do with my makefiles and the frameworks I build all the components as, but it's got me stumped. Anyone have any ideas on what (other than a problem at the gnustep-base level) might be calling this? +[NSProcessInfo load] is definitely being called before main(), and is getting the args quite happilyThe only thing reasonable I can think of is that maybe a +load method in your app or some other lib is improperly using ObjC statements (which might trigger a call to NSProcessInfo before all the load methods are complete and NSProcessInfo can call +initialize).Nor that. Not one of my classes has a +load. About the only thing I can think of is that it's a threading issue.I put some debug printfs in NSProcess|nfo, rebuilt and installed base (sigh - 200Mhz machine), and watched it happily do +load and parse argv and argc. But when It got to +initialize, its local argc and argv were mysteriously empty, which is suspicious.Maybe I'll build everything (again) with threading disabled and see what happens. Unless you have any better ideas.
I've changed the subject line as I dismissed your first post as spam ;-).Well threading (per se) should not be the issue. In fact I suspect you may have more trouble with threading disabled wrt GSWeb (not that you can't make it work single threaded).
Could you start your app an a recent gdb (6.0/6.1) and post a backtrace? Could try using a watchpoint? Does the trivial gsweb/Examples/hello or the Testing/DynamicElements show similar behavior?
Cheers, David
[Prev in Thread] | Current Thread | [Next in Thread] |