From ceae13acc082c5d77ceb851a9e118f4f42c426fa Mon Sep 17 00:00:00 2001 From: Raymond Chandler Date: Fri, 15 May 2009 20:03:17 +0000 Subject: [PATCH] MODAPP-279 git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@13365 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/applications/mod_lcr/mod_lcr.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/src/mod/applications/mod_lcr/mod_lcr.c b/src/mod/applications/mod_lcr/mod_lcr.c index ae9c0a1e33..c51d827ca2 100644 --- a/src/mod/applications/mod_lcr/mod_lcr.c +++ b/src/mod/applications/mod_lcr/mod_lcr.c @@ -230,17 +230,26 @@ static char *get_bridge_data(switch_memory_pool_t *pool, char *dialed_number, ch char *cid = NULL; orig_destination_number = destination_number = switch_core_strdup(pool, dialed_number); - + tstrip = ((cur_route->digit_len - cur_route->tstrip) + 1); lstrip = cur_route->lstrip; - if (strlen(destination_number) > tstrip && cur_route->tstrip > 0) { - destination_number[tstrip] = '\0'; - } - if (strlen(destination_number) > lstrip && cur_route->lstrip > 0) { - destination_number += lstrip; - } - + if (cur_route->tstrip > 0) { + if (strlen(destination_number) > tstrip) { + destination_number[tstrip] = '\0'; + } + else { + destination_number[0] = '\0'; + } + } + if (cur_route->lstrip > 0) { + if (strlen(destination_number) > lstrip) { + destination_number += lstrip; + } + else { + destination_number[0] = '\0'; + } + } codec = ""; if (!switch_strlen_zero(cur_route->codec)) { codec = switch_core_sprintf(pool, ",absolute_codec_string=%s", cur_route->codec);