diff --git a/include/grpc/support/tls.h b/include/grpc/support/tls.h index 7a7143c6d19c7134f35f9324bf776d9e40b09da6..156280e47da5a6b7aaa5648dfbf6baa6e5557617 100644 --- a/include/grpc/support/tls.h +++ b/include/grpc/support/tls.h @@ -54,7 +54,7 @@ Destroying a thread local: gpr_tls_destroy(&foo); - Setting a thread local: + Setting a thread local (returns new_value): gpr_tls_set(&foo, new_value); Accessing a thread local: diff --git a/include/grpc/support/tls_pthread.h b/include/grpc/support/tls_pthread.h index 249c4d1cab673cc549022c00d345d0f15bbfc34c..07eb12e5bf86d6a31ac0f9487588b8f0df8ae111 100644 --- a/include/grpc/support/tls_pthread.h +++ b/include/grpc/support/tls_pthread.h @@ -47,7 +47,7 @@ struct gpr_pthread_thread_local { #define gpr_tls_init(tls) GPR_ASSERT(0 == pthread_key_create(&(tls)->key, NULL)) #define gpr_tls_destroy(tls) pthread_key_delete((tls)->key) #define gpr_tls_set(tls, new_value) \ - GPR_ASSERT(pthread_setspecific((tls)->key, (void*)(new_value)) == 0) + (GPR_ASSERT(pthread_setspecific((tls)->key, (void*)(new_value)) == 0), (new_value)) #define gpr_tls_get(tls) ((gpr_intptr)pthread_getspecific((tls)->key)) #endif