summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/asterisk/threadstorage.h10
1 files changed, 6 insertions, 4 deletions
diff --git a/include/asterisk/threadstorage.h b/include/asterisk/threadstorage.h
index e204748ba..e3ece8b67 100644
--- a/include/asterisk/threadstorage.h
+++ b/include/asterisk/threadstorage.h
@@ -177,10 +177,11 @@ void *ast_threadstorage_get(struct ast_threadstorage *ts, size_t init_size),
pthread_once(&ts->once, ts->key_init);
if (!(buf = pthread_getspecific(ts->key))) {
- if (!(buf = ast_calloc(1, init_size)))
+ if (!(buf = ast_calloc(1, init_size))) {
return NULL;
+ }
if (ts->custom_init && ts->custom_init(buf)) {
- free(buf);
+ ast_free(buf);
return NULL;
}
pthread_setspecific(ts->key, buf);
@@ -197,10 +198,11 @@ void *__ast_threadstorage_get(struct ast_threadstorage *ts, size_t init_size, co
pthread_once(&ts->once, ts->key_init);
if (!(buf = pthread_getspecific(ts->key))) {
- if (!(buf = ast_calloc(1, init_size)))
+ if (!(buf = ast_calloc(1, init_size))) {
return NULL;
+ }
if (ts->custom_init && ts->custom_init(buf)) {
- free(buf);
+ ast_free(buf);
return NULL;
}
pthread_setspecific(ts->key, buf);