mirror of
				https://github.com/asterisk/asterisk.git
				synced 2025-10-31 02:37:10 +00:00 
			
		
		
		
	It is possible for framein to get called and no channel be available, so do a check before we increment the count.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@49716 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
		| @@ -142,10 +142,18 @@ static int zap_framein(struct ast_trans_pvt *pvt, struct ast_frame *f) | ||||
| 	if(!ztp->inuse) { | ||||
| 		ast_mutex_lock(&channelcount); | ||||
| 		if(pvt->t->dstfmt == 8 || pvt->t->dstfmt == 0 ) { | ||||
| 			if (complexinuse == totalchannels) { | ||||
| 				ast_mutex_unlock(&channelcount); | ||||
| 				return -1; | ||||
| 			} | ||||
| 			complexinuse++; | ||||
| 			if(complexinuse == totalchannels) | ||||
| 				deactivate_translator(0); | ||||
| 		} else { | ||||
| 			if (simpleinuse == totalchannels) { | ||||
| 				ast_mutex_unlock(&channelcount); | ||||
| 				return -1; | ||||
| 			} | ||||
| 			simpleinuse++; | ||||
| 			if(simpleinuse == totalchannels) | ||||
| 				deactivate_translator(1); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user