From 60bf4f35c6291cfddcf41a55d59e1fa99ad396e7 Mon Sep 17 00:00:00 2001 From: Jason Parker Date: Wed, 20 Jun 2007 20:53:16 +0000 Subject: [PATCH] Make sure we clear the previously dialed number if it did not exist. Issue 9958. git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@70494 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_skinny.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index c4d2a98a58..bf642933e4 100644 --- a/channels/chan_skinny.c +++ b/channels/chan_skinny.c @@ -2358,6 +2358,7 @@ static void *skinny_ss(void *data) } } else if (res == 0) { ast_log(LOG_DEBUG, "Not enough digits (and no ambiguous match)...\n"); + memset(d->exten, 0, sizeof(d->exten)); transmit_tone(s, SKINNY_REORDER); if (sub->owner && sub->owner->_state != AST_STATE_UP) { ast_indicate(c, -1); @@ -2367,6 +2368,7 @@ static void *skinny_ss(void *data) } else if (!ast_canmatch_extension(c, c->context, d->exten, 1, c->cid.cid_num) && ((d->exten[0] != '*') || (!ast_strlen_zero(d->exten) > 2))) { ast_log(LOG_WARNING, "Can't match [%s] from '%s' in context %s\n", d->exten, c->cid.cid_num ? c->cid.cid_num : "", c->context); + memset(d->exten, 0, sizeof(d->exten)); transmit_tone(s, SKINNY_REORDER); /* hang out for 3 seconds to let congestion play */ ast_safe_sleep(c, 3000); @@ -2382,6 +2384,7 @@ static void *skinny_ss(void *data) if (c) ast_hangup(c); + memset(d->exten, 0, sizeof(d->exten)); return NULL; }