Merged revisions 97152 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r97152 | file | 2008-01-08 15:53:52 -0400 (Tue, 08 Jan 2008) | 4 lines

If no group has been provided to the GROUP_COUNT dialplan function then use the first one specific to the channel.
(closes issue #11077)
Reported by: m4him

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@97153 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Joshua Colp
2008-01-08 19:55:56 +00:00
parent 3ad9a66e0f
commit d1a42bbcd9

View File

@@ -40,6 +40,24 @@ static int group_count_function_read(struct ast_channel *chan, const char *cmd,
ast_app_group_split_group(data, group, sizeof(group), category,
sizeof(category));
/* If no group has been provided let's find one */
if (ast_strlen_zero(group)) {
struct ast_group_info *gi = NULL;
ast_app_group_list_rdlock();
for (gi = ast_app_group_list_head(); gi; gi = AST_LIST_NEXT(gi, list)) {
if (gi->chan != chan)
continue;
if (ast_strlen_zero(category) || (!ast_strlen_zero(gi->category) && !strcasecmp(gi->category, category)))
break;
}
if (gi) {
ast_copy_string(group, gi->group, sizeof(group));
ast_copy_string(category, gi->category, sizeof(category));
}
ast_app_group_list_unlock();
}
if ((count = ast_app_group_get_count(group, category)) == -1)
ast_log(LOG_NOTICE, "No group could be found for channel '%s'\n", chan->name);
else