diff options
Diffstat (limited to 'sunrpc/rpc_thread.c')
-rw-r--r-- | sunrpc/rpc_thread.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/sunrpc/rpc_thread.c b/sunrpc/rpc_thread.c index 91e94c2eab..fbc1cf72fe 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) { + if (tvp != NULL && tvp != &__libc_tsd_RPC_VARS_mem) { __rpc_thread_svc_cleanup (); __rpc_thread_clnt_cleanup (); __rpc_thread_key_cleanup (); @@ -29,8 +29,7 @@ __rpc_thread_destroy (void) free (tvp->svcraw_private_s); free (tvp->authdes_cache_s); free (tvp->authdes_lru_s); - if (tvp != &__libc_tsd_RPC_VARS_mem) - free (tvp); + free (tvp); __libc_tsd_set (RPC_VARS, NULL); } } |