On Fri, Oct 19, 2007 at 03:11:02PM +0530, Ashwin wrote:
>
>
>
>
>
>
> On Fri, Oct 19, 2007 at 11:12:49AM +0530, Ashwin wrote:
> >
> > Hi,
> >
> > In the function xmlInitThreads present in the threads .c file the
> > null check for pthread_key_create is present twice on line numbers 810
> > and 818(version 28). Is this an oversight?
>
> > oversight definitely, note though that there is no pthread_key_delete
> > test, i.e. we don't free the data (which caused some toubles in amd
> > the automounter recently where libxml2 was dlopen'ed). But that's a
> > different (and quite complex) issue.
> In the same function null checks are not present for pthread_cond_destroy
> and pthread_cond_wait. Is this by design?
> Plus right at the beginning there are two extern declarations for
> pthread_key_create one with parameters and another without, maybe that's how
> it works but I am not sure
The fact taht the test is double is absolutely no problem.
For the general principle of those tests,i
1/ it's to avoid forcing linking to -lpthread by libxml2 while
using it if the final application uses it
2/ it uses ELF weak references
it's not simple, depends on the ELF format and compiler specifics.
Daniel
--
Red Hat Virtualization group http://redhat.com/virtualization/
Daniel Veillard | virtualization library http://libvirt.org/
[EMAIL PROTECTED] | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
_______________________________________________
xml mailing list, project page http://xmlsoft.org/
[email protected]
http://mail.gnome.org/mailman/listinfo/xml