From d08c3ad99f42e5a2de098b7fe01e876baef8b5da Mon Sep 17 00:00:00 2001 From: Naveen Albert Date: Thu, 14 Aug 2025 10:00:09 -0400 Subject: [PATCH] func_frame_drop: Handle allocation failure properly. Handle allocation failure and simplify the allocation using asprintf. Resolves: #1366 --- funcs/func_frame_drop.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/funcs/func_frame_drop.c b/funcs/func_frame_drop.c index 19694bc387..0d679ad9fc 100644 --- a/funcs/func_frame_drop.c +++ b/funcs/func_frame_drop.c @@ -234,8 +234,10 @@ static int frame_drop_helper(struct ast_channel *chan, const char *cmd, char *da framedata->list_type = TX; } - buffer = ast_malloc(sizeof(value) + 3); /* leading and trailing comma and null terminator */ - snprintf(buffer, sizeof(value) + 2, ",%s,", value); + if (ast_asprintf(&buffer, ",%s,", value) < 0) { + ast_free(framedata); + return -1; + } for (i = 0; i < ARRAY_LEN(frametype2str); i++) { if (strcasestr(buffer, frametype2str[i].str)) { framedata->values[i] = 1;