From 2dad2d6bfc6ede463d5b11cbbaa2d27d33cfe0f6 Mon Sep 17 00:00:00 2001 From: David Xu Date: Thu, 7 Oct 2004 14:23:15 +0000 Subject: [PATCH] Use PTHREAD_SCOPE_SYSTEM to decide what should be done. --- lib/libkse/thread/thr_execve.c | 5 ++--- lib/libpthread/thread/thr_execve.c | 5 ++--- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/lib/libkse/thread/thr_execve.c b/lib/libkse/thread/thr_execve.c index 2904a2f9510..ab1a9e9852f 100644 --- a/lib/libkse/thread/thr_execve.c +++ b/lib/libkse/thread/thr_execve.c @@ -40,17 +40,16 @@ int _execve(const char *name, char *const *argv, char *const *envp) { struct kse_execve_args args; - struct pthread *curthread; + struct pthread *curthread = _get_curthread(); int ret; - if (!_kse_isthreaded()) + if (curthread->attr.flags & PTHREAD_SCOPE_SYSTEM) ret = __sys_execve(name, argv, envp); else { /* * When exec'ing, set the kernel signal mask to the thread's * signal mask to satisfy POSIX requirements. */ - curthread = _get_curthread(); args.sigmask = curthread->sigmask; args.sigpend = curthread->sigpend; args.path = (char *)name; diff --git a/lib/libpthread/thread/thr_execve.c b/lib/libpthread/thread/thr_execve.c index 2904a2f9510..ab1a9e9852f 100644 --- a/lib/libpthread/thread/thr_execve.c +++ b/lib/libpthread/thread/thr_execve.c @@ -40,17 +40,16 @@ int _execve(const char *name, char *const *argv, char *const *envp) { struct kse_execve_args args; - struct pthread *curthread; + struct pthread *curthread = _get_curthread(); int ret; - if (!_kse_isthreaded()) + if (curthread->attr.flags & PTHREAD_SCOPE_SYSTEM) ret = __sys_execve(name, argv, envp); else { /* * When exec'ing, set the kernel signal mask to the thread's * signal mask to satisfy POSIX requirements. */ - curthread = _get_curthread(); args.sigmask = curthread->sigmask; args.sigpend = curthread->sigpend; args.path = (char *)name;