mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 10:47:18 +00:00 
			
		
		
		
	This fixes a nasty chanspy bug which was causing a channel leak every time a spied on channel made a call.
In addition to the above, it makes certain channel destruction occurs so that applications don't get stuck waiting for datastore destruction while monitored by chanspy. (closes issue #18742) Reported by: jkister Tested by: jkister, jcovert, jrose Review: http://reviewboard.digium.internal/r/106/ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.8@311197 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -707,6 +707,7 @@ static struct ast_autochan *next_channel(struct ast_channel_iterator *iter, | ||||
| 		struct ast_autochan *autochan, struct ast_channel *chan) | ||||
| { | ||||
| 	struct ast_channel *next; | ||||
| 	struct ast_autochan *autochan_store; | ||||
| 	const size_t pseudo_len = strlen("DAHDI/pseudo"); | ||||
|  | ||||
| 	if (!iter) { | ||||
| @@ -724,7 +725,10 @@ redo: | ||||
| 		goto redo; | ||||
| 	} | ||||
|  | ||||
| 	return ast_autochan_setup(next); | ||||
| 	autochan_store = ast_autochan_setup(next); | ||||
| 	ast_channel_unref(next); | ||||
|  | ||||
| 	return autochan_store; | ||||
| } | ||||
|  | ||||
| static int common_exec(struct ast_channel *chan, struct ast_flags *flags, | ||||
|   | ||||
		Reference in New Issue
	
	Block a user