On Wed, 19 May 2004, [EMAIL PROTECTED] wrote:
 
>> I checked direct logic like large/small names, etc.  I think there
>> might be some sort of race condition with the atoms and/or the
>> query structs.
> 
> There shouldn't be many possible ways to cause race condition WRT to
> accessing memory in GTKG because it's mono-threaded. There's surely
> no race condition in host_to_ip() and adns_gethostbyname() looks
> safe to me as well.

OK.  I wasn't aware that the Valgrind was done on the 0.93 code.  I
was thinking that the code in "adns_resolve()" is operating on
"query.hostname" and then an atom gets made and referenced by
query.data and this in turn is put in q.hostname, which is passed to
the DNS helper thread.  In this case, GTKG is multi-threaded (or more
formally, multi-process).  I wondered if something could happen to the
atom or the static "query" that would cause the copied hostname to the
q.hostname to become corrupt.  However, since all of this was in 0.93,
I was just wasting my time because it does seem far fetched.

Thanks,
Bill Pringlemeir.




-------------------------------------------------------
This SF.Net email is sponsored by: Oracle 10g
Get certified on the hottest thing ever to hit the market... Oracle 10g. 
Take an Oracle 10g class now, and we'll give you the exam FREE.
http://ads.osdn.com/?ad_id=3149&alloc_id=8166&op=click
_______________________________________________
Gtk-gnutella-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel

Reply via email to