This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Diagnosis of setup crash (was: Re: Re[3]: cygwin download incomplete - try again - loop?)


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

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
in the yacc/lex stuff (of which I know nothing) based upon the mirror value
produced in IniParseFindVisitor::visitFile(). Changing < mirror = String (); >
to < mirror = String ("."); > on line 69 of IniParseFindVisitor.cc eliminates
the crash.

Max.

Crash backtrace:
> (gdb) bt
> #0  0x004346d3 in rfc1738_do_escape (url=0x0, encode_reserved=1)
>     at ../setup/rfc1738.cc:92
> #1  0x0043484c in rfc1738_escape_part (url=@0x13784d0)
>     at ../setup/rfc1738.cc:187
> #2  0x0040c5ef in check_for_cached (pkgsource=@0x12f47a0)
>     at ../setup/download.cc:91
> #3  0x004043e6 in scan_downloaded_files () at ../setup/choose.cc:471
> #4  0x004045f1 in ChooserPage::OnInit (this=0x23fb60) at
> ../setup/choose.cc:517






--
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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]