From 63348802e663c36014bdf5eb4a725f1b99c13574 Mon Sep 17 00:00:00 2001 From: russell Date: Sun, 6 Nov 2005 22:17:47 +0000 Subject: don't loop forever on an invalid options string (issue #5629) git-svn-id: http://svn.digium.com/svn/asterisk/trunk@6989 f38db490-d61c-443f-a65b-d21fe96a405b --- channels/chan_agent.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'channels') diff --git a/channels/chan_agent.c b/channels/chan_agent.c index f886288b8..7cacdb228 100755 --- a/channels/chan_agent.c +++ b/channels/chan_agent.c @@ -1658,13 +1658,12 @@ static struct ast_cli_entry cli_agent_logoff = { STANDARD_LOCAL_USER; LOCAL_USER_DECL; -/** - * Log in agent application. +/*! + * \brief Log in agent application. * - * @param chan - * @param data - * @param callbackmode - * @returns + * \param chan + * \param data + * \param callbackmode non-zero for AgentCallbackLogin */ static int __login_exec(struct ast_channel *chan, void *data, int callbackmode) { @@ -1736,10 +1735,9 @@ static int __login_exec(struct ast_channel *chan, void *data, int callbackmode) context = parse; } - while (!ast_strlen_zero(args.options)) { - if (*args.options == 's') { + if (!ast_strlen_zero(args.options)) { + if (strchr(args.options, 's')) { play_announcement = 0; - break; } } -- cgit v1.2.3