mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-08 10:58:15 +00:00
Protect the CDR record from modification by pbx_exec so that the application data contains the Queue data.
(closes issue #10761) Reported by: snar Patches: app-queue-mixmonitor.patch uploaded by snar (license 245) git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@83074 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -2724,8 +2724,12 @@ static int try_calling(struct queue_ent *qe, const char *options, char *announce
|
||||
|
||||
if (option_debug)
|
||||
ast_log(LOG_DEBUG, "Arguments being passed to MixMonitor: %s\n", mixmonargs);
|
||||
|
||||
/* We purposely lock the CDR so that pbx_exec does not update the application data */
|
||||
if (qe->chan->cdr)
|
||||
ast_set_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
|
||||
ret = pbx_exec(qe->chan, mixmonapp, mixmonargs);
|
||||
if (qe->chan->cdr)
|
||||
ast_clear_flag(qe->chan->cdr, AST_CDR_FLAG_LOCKED);
|
||||
|
||||
} else
|
||||
ast_log(LOG_WARNING, "Asked to run MixMonitor on this call, but cannot find the MixMonitor app!\n");
|
||||
|
||||
Reference in New Issue
Block a user