Subject: Re: Diagnosis of setup crash (was: Re: Re[3]: cygwin download incomplete - try again - loop?)
From: Pavel Tsekov <[email-masked]>
To: "Max Bowsher" <[email-masked]>
Cc: [email-masked]
Date: Mon, 10 Jun 2002 12:09:10 +0200

MB> The crash occurs because rfc1738_do_escape is passed url=0x0. This zero pointer
MB> is gereated in rfc1738_escape_part by url.cstr_oneuse(), where url = String("").

MB> rfc_escape_part("") is called from check_for_cached(). The "" value comes from
pkgsource.sites[n]->>key. The site objects with a key of "" are created somewhere
MB> in the yacc/lex stuff (of which I know nothing) based upon the mirror value
MB> produced in IniParseFindVisitor::visitFile(). Changing < mirror = String (); >
MB> to < mirror = String ("."); > on line 69 of IniParseFindVisitor.cc eliminates
MB> the crash.

Well, it seems like this is a result of the fix applied for the
previous bug. Btw IMO this can be fixed by skipping the ini_init()
part and all its dependencies when the mirror is determined to be
empty. I.e. the previous fix is OK , but some more code has to be
moved to the block "prefix.size() > 0".

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/