[asterisk-commits] rmudgett: trunk r214654 - /trunk/channels/sig_pri.c

SVN commits to the Asterisk project asterisk-commits at lists.digium.com
Fri Aug 28 14:13:56 CDT 2009


Author: rmudgett
Date: Fri Aug 28 14:13:53 2009
New Revision: 214654

URL: http://svn.asterisk.org/svn-view/asterisk?view=rev&rev=214654
Log:
Move discardremoteholdretrieval test so it applies only to the specific notification indicator values.

Modified:
    trunk/channels/sig_pri.c

Modified: trunk/channels/sig_pri.c
URL: http://svn.asterisk.org/svn-view/asterisk/trunk/channels/sig_pri.c?view=diff&rev=214654&r1=214653&r2=214654
==============================================================================
--- trunk/channels/sig_pri.c (original)
+++ trunk/channels/sig_pri.c Fri Aug 28 14:13:53 2009
@@ -2294,20 +2294,26 @@
 				if (chanpos < 0) {
 					ast_log(LOG_WARNING, "Received NOTIFY on unconfigured channel %d/%d span %d\n",
 						PRI_SPAN(e->notify.channel), PRI_CHANNEL(e->notify.channel), pri->span);
-				} else if (!pri->discardremoteholdretrieval) {
-					struct ast_frame f = { AST_FRAME_CONTROL, };
-
+				} else {
 					sig_pri_lock_private(pri->pvts[chanpos]);
 					sig_pri_handle_subcmds(pri, chanpos, e->e, e->notify.channel,
 						e->notify.subcmds);
 					switch (e->notify.info) {
 					case PRI_NOTIFY_REMOTE_HOLD:
-						f.subclass = AST_CONTROL_HOLD;
-						pri_queue_frame(pri->pvts[chanpos], &f, pri);
+						if (!pri->discardremoteholdretrieval) {
+							struct ast_frame f = { AST_FRAME_CONTROL, };
+
+							f.subclass = AST_CONTROL_HOLD;
+							pri_queue_frame(pri->pvts[chanpos], &f, pri);
+						}
 						break;
 					case PRI_NOTIFY_REMOTE_RETRIEVAL:
-						f.subclass = AST_CONTROL_UNHOLD;
-						pri_queue_frame(pri->pvts[chanpos], &f, pri);
+						if (!pri->discardremoteholdretrieval) {
+							struct ast_frame f = { AST_FRAME_CONTROL, };
+
+							f.subclass = AST_CONTROL_UNHOLD;
+							pri_queue_frame(pri->pvts[chanpos], &f, pri);
+						}
 						break;
 					}
 					sig_pri_unlock_private(pri->pvts[chanpos]);




More information about the asterisk-commits mailing list