diff options
author | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-06-20 20:53:16 +0000 |
---|---|---|
committer | qwell <qwell@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-06-20 20:53:16 +0000 |
commit | fd8261af4548988e9bd69df93e3cb6692a8bfab6 (patch) | |
tree | 5c70affaf335d326769b549a282682e350326330 /channels/chan_skinny.c | |
parent | 6f2e5448870a72b352c7fcb0e1547a85825145e9 (diff) |
Make sure we clear the previously dialed number if it did not exist.
Issue 9958.
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@70494 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_skinny.c')
-rw-r--r-- | channels/chan_skinny.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/channels/chan_skinny.c b/channels/chan_skinny.c index c4d2a98a5..bf642933e 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 : "<Unknown Caller>", 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; } |