am 7d1d98b9: am a02b93bd: libc: add sanity checks to pthread_mutex_destroy()

Merge commit '7d1d98b97e947de22aff4c0b67eec7ae68c822ee'

* commit '7d1d98b97e947de22aff4c0b67eec7ae68c822ee':
  libc: add sanity checks to pthread_mutex_destroy()
This commit is contained in:
David 'Digit' Turner 2010-06-29 12:55:34 -07:00 committed by Android Git Automerger
commit 4e6043a355
2 changed files with 10 additions and 3 deletions

View File

@ -880,8 +880,13 @@ int pthread_mutex_init(pthread_mutex_t *mutex,
int pthread_mutex_destroy(pthread_mutex_t *mutex) int pthread_mutex_destroy(pthread_mutex_t *mutex)
{ {
if (__unlikely(mutex == NULL)) int ret;
return EINVAL;
/* use trylock to ensure that the mutex value is
* valid and is not already locked. */
ret = pthread_mutex_trylock(mutex);
if (ret != 0)
return ret;
mutex->value = 0xdead10cc; mutex->value = 0xdead10cc;
return 0; return 0;

View File

@ -3,7 +3,9 @@ Bionic ChangeLog:
Differences between current and Android 2.2: Differences between current and Android 2.2:
- <pthread.h>: Add reader/writer locks implementation. - <pthread.h>: Add reader/writer locks implementation. Add sanity
checking to pthread_mutex_destroy() (e.g. a locked mutex will return
EBUSY).
- <math.h>: Added sincos(), sincosf() and sincosl() (GLibc compatibility). - <math.h>: Added sincos(), sincosf() and sincosl() (GLibc compatibility).