summaryrefslogtreecommitdiff
path: root/channels/sig_pri.c
diff options
context:
space:
mode:
Diffstat (limited to 'channels/sig_pri.c')
-rw-r--r--channels/sig_pri.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/channels/sig_pri.c b/channels/sig_pri.c
index 312737132..7db123e29 100644
--- a/channels/sig_pri.c
+++ b/channels/sig_pri.c
@@ -7825,6 +7825,15 @@ int sig_pri_indicate(struct sig_pri_chan *p, struct ast_channel *chan, int condi
/* don't continue in ast_indicate */
res = 0;
break;
+ case AST_CONTROL_INCOMPLETE:
+ /* If we are connected or if we support overlap dialing, wait for additional digits */
+ if (p->call_level == SIG_PRI_CALL_LEVEL_CONNECT || (p->pri->overlapdial & DAHDI_OVERLAPDIAL_INCOMING)) {
+ res = 0;
+ break;
+ }
+ /* Otherwise, treat as congestion */
+ chan->hangupcause = AST_CAUSE_INVALID_NUMBER_FORMAT;
+ /* Falls through */
case AST_CONTROL_CONGESTION:
if (p->priindication_oob || p->no_b_channel) {
/* There are many cause codes that generate an AST_CONTROL_CONGESTION. */