This is the mail archive of the cygwin 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]

Re: dereferenced NULL in setup-2.529 (possible patch)

mwoehlke wrote:

> I built setup (from the 2.529 tarball) and ran it in gdb, and got this
> stack trace:

Thanks for the debugging.  I must have missed the original report, as I
don't see the parent post of this thread.  Under what circumstances is
this repeatable?  It looks like the probable case is that
get_url_to_string() is not able to fetch the URL of the mirrors list,
and hence 'mirrors' is empty.

As cgf alludes, the state of string handling in setup is currently quite
a mess.  There is kind of a mix std::string, a homemade String class,
and C strings.  We're trying to get rid of the homemade kind.

>From looking at it seems that get_site_list() is in dire need of
refactoring.  I think it would make things a lot simpler to just have
load_site_list() take a string, and then process it using c_str(),
skipping the whole new_cstr_char_array() mess.  It makes no sense to go
and allocate something just to pass to load_site_list(), only to then
free it.  And eventually everything in String++.{cc,h} needs to die

I will try to prepare a fix along these lines soon.


Unsubscribe info:
Problem reports:

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