Incoming overlap dialing no longer works after sig_pri extraction.

The problem would manifest itself if your dialplan matching could accept
more digits to match than were actually dialed.  The time out waiting for
overlap digits disconnected the call instead of matching any accumulated
digits to the dialplan.

Accidental conversion of a break out of loop as a break out of switch.

(closes issue #17401)
Reported by: avalentin
Patches:
      issue17401_digit_timeout.patch uploaded by rmudgett (license 664)
Tested by: avalentin, rmudgett


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@267928 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Richard Mudgett 2010-06-04 14:45:03 +00:00
parent 8b3cf71896
commit 10e2c47c75
1 changed files with 1 additions and 8 deletions

View File

@ -1477,7 +1477,7 @@ static void *pri_ss_thread(void *data)
exten[len++] = res;
exten[len] = '\0';
} else
goto exit;
break;
}
/* if no extension was received ('unspecified') on overlap call, use the 's' extension */
if (ast_strlen_zero(exten)) {
@ -1522,13 +1522,6 @@ static void *pri_ss_thread(void *data)
p->call = NULL;
}
return NULL;
exit:
res = sig_pri_play_tone(p, SIG_PRI_TONE_CONGESTION);
if (res < 0)
ast_log(LOG_WARNING, "Unable to play congestion tone on channel %d\n", p->channel);
ast_hangup(chan);
return NULL;
}
void pri_event_alarm(struct sig_pri_pri *pri, int index, int before_start_pri)