diff --git a/channels/chan_phone.c b/channels/chan_phone.c index 3bdfdfd26e4954092183b4877077f0c61b4f149a..f46083a5872d50fb15b8bb9194000d1288c88977 100755 --- a/channels/chan_phone.c +++ b/channels/chan_phone.c @@ -126,6 +126,7 @@ static int phone_digit(struct ast_channel *ast, char digit) return -1; } ioctl(p->fd, PHONE_PLAY_TONE, digit); + p->lastformat = -1; return 0; } @@ -634,6 +635,7 @@ static void phone_check_exception(struct phone_pvt *i) ioctl(i->fd, PHONE_PLAY_STOP); ioctl(i->fd, PHONE_PLAY_CODEC, ULAW); ioctl(i->fd, PHONE_PLAY_START); + i->lastformat = -1; } } else { if (i->dialtone) { @@ -647,6 +649,7 @@ static void phone_check_exception(struct phone_pvt *i) ioctl(i->fd, PHONE_PLAY_STOP); ioctl(i->fd, PHONE_REC_STOP); i->dialtone = 0; + i->lastformat = -1; } } if (phonee.bits.pstn_ring) {