diff options
-rw-r--r-- | threadproc/beos/thread.c | 1 | ||||
-rw-r--r-- | threadproc/netware/thread.c | 1 | ||||
-rw-r--r-- | threadproc/os2/thread.c | 3 | ||||
-rw-r--r-- | threadproc/unix/thread.c | 1 | ||||
-rw-r--r-- | threadproc/win32/thread.c | 3 |
5 files changed, 7 insertions, 2 deletions
diff --git a/threadproc/beos/thread.c b/threadproc/beos/thread.c index 0ce9638f6..39a5e366c 100644 --- a/threadproc/beos/thread.c +++ b/threadproc/beos/thread.c @@ -172,6 +172,7 @@ APR_DECLARE(apr_status_t) apr_thread_current_create(apr_thread_t **current, stat = alloc_thread(current, attr, NULL, NULL, pool); if (stat != APR_SUCCESS) { + *current = NULL; return stat; } diff --git a/threadproc/netware/thread.c b/threadproc/netware/thread.c index 019358a35..fd74a9685 100644 --- a/threadproc/netware/thread.c +++ b/threadproc/netware/thread.c @@ -207,6 +207,7 @@ APR_DECLARE(apr_status_t) apr_thread_current_create(apr_thread_t **current, stat = alloc_thread(current, attr, NULL, NULL, pool); if (stat != APR_SUCCESS) { + *current = NULL; return stat; } diff --git a/threadproc/os2/thread.c b/threadproc/os2/thread.c index 44f7e7b11..79b24f535 100644 --- a/threadproc/os2/thread.c +++ b/threadproc/os2/thread.c @@ -173,8 +173,9 @@ APR_DECLARE(apr_status_t) apr_thread_current_create(apr_thread_t **current, return APR_EEXIST; } - stat = alloc_thread(new, attr, NULL, NULL, pool); + stat = alloc_thread(current, attr, NULL, NULL, pool); if (stat != APR_SUCCESS) { + *current = NULL; return stat; } diff --git a/threadproc/unix/thread.c b/threadproc/unix/thread.c index 05eb689b8..d84d5ef0d 100644 --- a/threadproc/unix/thread.c +++ b/threadproc/unix/thread.c @@ -248,6 +248,7 @@ APR_DECLARE(apr_status_t) apr_thread_current_create(apr_thread_t **current, stat = alloc_thread(current, attr, NULL, NULL, pool); if (stat != APR_SUCCESS) { + *current = NULL; return stat; } diff --git a/threadproc/win32/thread.c b/threadproc/win32/thread.c index e7e9ebc00..19ba008aa 100644 --- a/threadproc/win32/thread.c +++ b/threadproc/win32/thread.c @@ -196,11 +196,12 @@ APR_DECLARE(apr_status_t) apr_thread_current_create(apr_thread_t **current, stat = alloc_thread(current, attr, NULL, NULL, pool); if (stat != APR_SUCCESS) { + *current = NULL; return stat; } if (!(attr && attr->detach)) { - (*new)->td = apr_os_thread_current(); + (*current)->td = apr_os_thread_current(); } #if APR_HAS_THREAD_LOCAL |