Okay, just a bit more "manual backtrace" info:

On Mon, 2003-10-20 at 21:06, Adam C Powell IV wrote:
> During the call to NSS_Init, nss_makeFlags(1,0,0,0,0,1) returns 0x219a8,
> and the resulting moduleSpec is:
> 
> name="NSS Internal Module" parameters="configdir='/home/hazelsct/.netscape' 
> certPrefix='' keyPrefix='' secmod='secmod.db' flags=readOnly,optimizeSpace " 
> NSS="flags=internal,moduleDB,moduleDBOnly,critical"
> 
> Then SECMOD_LoadModule() returns something non-null, but apparently
> ->loaded is zero because nss_Init returns -1.
> 
> During the call to NSS_NoDB_Init, nss_makeFlags(1,1,1,1,0,1) returns
> 0x25268 (okay, maybe this is an address whose value is meaningless, not
> what I thought), and the resulting moduleSpec is:
> 
> name="NSS Internal Module" parameters="configdir='' certPrefix='' 
> keyPrefix='' secmod='' 
> flags=readOnly,noCertDB,noModDB,forceOpen,optimizeSpace " 
> NSS="flags=internal,moduleDB,moduleDBOnly,critical"
> 
> Then ->loaded seems to work, because it calls secoid_Init(), then
> segfaults in the call to STAN_LoadDefaultNSS3TrustDomain().  Which in
> turn segfaults in NSSTrustDomain_Create(), which segfaults in
> NSSArena_Create().  (God, how I wish I could just "backtrace"!!)

This calls nss_ClearErrorStack() in nss/lib/base/arena.c, which calls
error_get_my_stack(), and since error_stack_index=0, it calls
PR_CallOnce() in nsprpub/pr/src/misc/prinit.c; that's where the segfault
is.

So it seems to be somewhere in NSPR...  Maybe that's why regxpcom and
regchrome segfault on ARM (bug 212569).  Again, I'll keep going when I
get more motivation and time.

Zeen,
-- 
-Adam P.

GPG fingerprint: D54D 1AEE B11C CE9B A02B  C5DD 526F 01E8 564E E4B6

Welcome to the best software in the world today cafe!
http://lyre.mit.edu/~powell/The_Best_Stuff_In_The_World_Today_Cafe.ogg


Reply via email to