diff --git a/ChangeLog b/ChangeLog index 9c099bbe62..d708c26c7a 100755 --- a/ChangeLog +++ b/ChangeLog @@ -7,6 +7,7 @@ * many files: Add doxygen updates to categorize modules into groups. Convert a lot of comments over to doxygen style. Add some text giving a basic overview of channels. * many files: Update applications to add an exit status variable, make priority jumping optional, and use new args parsing macros * pbx.c cdr.c res/res_features.c apps/app_dial.c include/asterisk/cdr.h: Convert some built-in applications to use new args parsing macros. Change ast_cdr_reset to take a pointer to an ast_flags structure instead of an integer for flags. + * channels/chan_agent.c: Don't loop forever on an invalid options string 2005-11-05 Kevin P. Fleming diff --git a/channels/chan_agent.c b/channels/chan_agent.c index f886288b80..7cacdb2289 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; } }