Aggelos Economopoulos wrote:
On Thursday 08 May 2008, Matthew Dillon wrote:
Ultimately it comes down to what does the standard intend?
[...]
    So I am willing to commit the change, even if the standard doesn't allow
    NULL.

Well, SUSv3 says

"The pthread_mutex_lock(), pthread_mutex_trylock(), and pthread_mutex_unlock()
functions may fail if:
[EINVAL]
The value specified by mutex does not refer to an initialized mutex object."

So it definitely allows NULL and seems to encourage extra mtx->magic checks.

checking with linux (ubuntu hardy), passing a NULL pointer to pthread_mutex_trylock() crashes, so I don't think we have to do the checks as well. The root of the problem seems to be somewhere else.

cheers
  simon

--
Serve - BSD     +++  RENT this banner advert  +++    ASCII Ribbon   /"\
Work - Mac      +++  space for low €€€ NOW!1  +++      Campaign     \ /
Party Enjoy Relax   |   http://dragonflybsd.org      Against  HTML   \
Dude 2c 2 the max   !   http://golden-apple.biz       Mail + News   / \

Reply via email to