From 3a0e7aec6aa1424561f16a8f6bbd8bccee8d4821 Mon Sep 17 00:00:00 2001 From: Joshua Colp Date: Thu, 18 Dec 2008 16:07:37 +0000 Subject: [PATCH] Do not crash if we are not passed in a followme id. (closes issue #14106) Reported by: ys Patches: app_followme.c.2.diff uploaded by ys (license 281) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@165537 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- apps/app_followme.c | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/apps/app_followme.c b/apps/app_followme.c index fca6facc2e..b5bb5588ca 100644 --- a/apps/app_followme.c +++ b/apps/app_followme.c @@ -960,22 +960,26 @@ static int app_exec(struct ast_channel *chan, void *data) AST_APP_ARG(options); ); + if (ast_strlen_zero(data)) { + ast_log(LOG_WARNING, "%s requires an argument (followmeid)\n",app); + return -1; + } + if (!(argstr = ast_strdupa((char *)data))) { ast_log(LOG_ERROR, "Out of memory!\n"); return -1; } - if (!data) { - ast_log(LOG_WARNING, "%s requires an argument (followmeid)\n",app); + + AST_STANDARD_APP_ARGS(args, argstr); + if (ast_strlen_zero(args.followmeid)) { + ast_log(LOG_WARNING, "%s requires an argument (followmeid)\n", app); return -1; } u = ast_module_user_add(chan); - AST_STANDARD_APP_ARGS(args, argstr); - - if (!ast_strlen_zero(args.followmeid)) - AST_LIST_LOCK(&followmes); + AST_LIST_LOCK(&followmes); AST_LIST_TRAVERSE(&followmes, f, entry) { if (!strcasecmp(f->name, args.followmeid) && (f->active)) break;