diff options
author | Ulrich Drepper <drepper@redhat.com> | 2006-05-04 18:08:28 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2006-05-04 18:08:28 +0000 |
commit | ca4fce0e1ece616c6f34d549469d26d787141a89 (patch) | |
tree | ab79cb7eea81f10668c92cc03120047cffc7012d /sunrpc | |
parent | 3f87d90102af2376a46bb2ebe419c83c30a25b73 (diff) | |
download | glibc-ca4fce0e1ece616c6f34d549469d26d787141a89.zip glibc-ca4fce0e1ece616c6f34d549469d26d787141a89.tar.gz glibc-ca4fce0e1ece616c6f34d549469d26d787141a89.tar.bz2 |
* sunrpc/rpc_thread.c (__rpc_thread_destroy): Don't skip entire
cleanup for initial thread, just the free call on TVP.
Diffstat (limited to 'sunrpc')
-rw-r--r-- | sunrpc/rpc_thread.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sunrpc/rpc_thread.c b/sunrpc/rpc_thread.c index fbc1cf7..91e94c2 100644 --- a/sunrpc/rpc_thread.c +++ b/sunrpc/rpc_thread.c @@ -20,7 +20,7 @@ __rpc_thread_destroy (void) { struct rpc_thread_variables *tvp = __libc_tsd_get (RPC_VARS); - if (tvp != NULL && tvp != &__libc_tsd_RPC_VARS_mem) { + if (tvp != NULL) { __rpc_thread_svc_cleanup (); __rpc_thread_clnt_cleanup (); __rpc_thread_key_cleanup (); @@ -29,7 +29,8 @@ __rpc_thread_destroy (void) free (tvp->svcraw_private_s); free (tvp->authdes_cache_s); free (tvp->authdes_lru_s); - free (tvp); + if (tvp != &__libc_tsd_RPC_VARS_mem) + free (tvp); __libc_tsd_set (RPC_VARS, NULL); } } |