diff options
author | Mystery Man <unknown@mandriva.org> | 2003-04-14 13:30:58 +0000 |
---|---|---|
committer | Mystery Man <unknown@mandriva.org> | 2003-04-14 13:30:58 +0000 |
commit | 3c75a78aa006b1f51e6b053f1edbf8f19ccbcb8f (patch) | |
tree | 3bf68e0d5ad6d2fca6c769c4e4e7218f2e0e6db3 /mdk-stage1/dietlibc/libpthread/pthread_join.c | |
parent | 327bd24f8e4291bd1882de1990dd7339f781a9cb (diff) | |
download | drakx-backup-do-not-use-1_1_9_54mdk.tar drakx-backup-do-not-use-1_1_9_54mdk.tar.gz drakx-backup-do-not-use-1_1_9_54mdk.tar.bz2 drakx-backup-do-not-use-1_1_9_54mdk.tar.xz drakx-backup-do-not-use-1_1_9_54mdk.zip |
This commit was manufactured by cvs2svn to create tag 'V1_1_9_54mdk'.V1_1_9_54mdk
Diffstat (limited to 'mdk-stage1/dietlibc/libpthread/pthread_join.c')
-rw-r--r-- | mdk-stage1/dietlibc/libpthread/pthread_join.c | 50 |
1 files changed, 0 insertions, 50 deletions
diff --git a/mdk-stage1/dietlibc/libpthread/pthread_join.c b/mdk-stage1/dietlibc/libpthread/pthread_join.c deleted file mode 100644 index 5b295bad1..000000000 --- a/mdk-stage1/dietlibc/libpthread/pthread_join.c +++ /dev/null @@ -1,50 +0,0 @@ -#include <unistd.h> -#include <stdlib.h> -#include <errno.h> - -#include "thread_internal.h" -#include <pthread.h> - -int pthread_join(pthread_t th, void **thread_return) -{ - pthread_t j; - _pthread_descr this, thread; - - __THREAD_INIT(); - - this = __thread_self(); - j=__find_thread_id(th); - - if (j==-1) { - (*(__errno_location()))=ESRCH; - return -1; - } - - thread = __get_thread_struct(j); - - /* error handling */ - if (thread==0) { - (*(__errno_location()))=ESRCH; - return -1; - } - - if (this==thread) { - (*(__errno_location()))=EDEADLK; - return -1; - } - - if (thread->detached || thread->joined) { - (*(__errno_location()))=EINVAL; - return -1; - } - - thread->joined=this; - this->join=1; - - while(this->join) __thread_wait_some_time(); - - if (thread_return) *thread_return=this->retval; - - return 0; -} - |