From: Corey Farrell Date: Tue, 21 Apr 2015 20:17:33 +0000 (-0400) Subject: Check for ao2_alloc failure in __ast_channel_internal_alloc. X-Git-Tag: 13.4.0-rc1~97^2 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=refs%2Fchanges%2F89%2F189%2F1;p=thirdparty%2Fasterisk.git Check for ao2_alloc failure in __ast_channel_internal_alloc. Fix a crash that could occur in __ast_channel_internal_alloc if ao2_alloc fails. ASTERISK-24991 #close Change-Id: I4ca89189eb22f907408cb87d0a1645cfe1314a90 --- diff --git a/main/channel_internal_api.c b/main/channel_internal_api.c index 624bdd1cb1..835b9ce374 100644 --- a/main/channel_internal_api.c +++ b/main/channel_internal_api.c @@ -1457,6 +1457,10 @@ struct ast_channel *__ast_channel_internal_alloc(void (*destructor)(void *obj), tmp = ao2_alloc(sizeof(*tmp), destructor); #endif + if (!tmp) { + return NULL; + } + if ((ast_string_field_init(tmp, 128))) { return ast_channel_unref(tmp); }