mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	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:
		| @@ -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 | ||||
|   | ||||
		Reference in New Issue
	
	Block a user