Qt 4.4 QtConcurrent and libthread_xu

Aggelos Economopoulos aoiko at cc.ece.ntua.gr
Wed May 7 14:32:57 PDT 2008

On Wednesday 07 May 2008, Johannes Hofmann wrote:
> Aggelos Economopoulos <aoiko at cc.ece.ntua.gr> wrote:
> > On Wednesday 07 May 2008, Matthew Dillon wrote:
> > [...]
> >>     In libthread_xu it assumes non-NULL and will crash.
> >> 
> >>     Try this patch.  It will do the same check that libc_r does.  I'm
> >>     not convinced that Qt isn't broken, though, Qt shouldn't be passing
> >>     NULL to the mutex functions, it should be passing the address of
> >>     a pthread_mutex_t which itself can be NULL, but it should be passing
> >>     NULL.
> > 
> > Still, it's bad form for a library function to crash just because somebody
> > called it with an obviously invalid argument.
> Not sure about that. There are many illeagal pointers that can't be catched
> so why treat NULL differently?

Because NULL is guaranteed not to point to an object.

> And a crash with an obvious stack trace shows that there is a problem that
> should be fixed.

While an error of EINVAL is hard to debug?


More information about the Bugs mailing list