From 475be50f76a4c441357189a20d026b439832c919 Mon Sep 17 00:00:00 2001 From: Steve Murphy Date: Wed, 12 Nov 2008 20:11:54 +0000 Subject: [PATCH] Merged revisions 156299 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ................ r156299 | murf | 2008-11-12 12:47:29 -0700 (Wed, 12 Nov 2008) | 26 lines Merged revisions 156297 via svnmerge from https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r156297 | murf | 2008-11-12 12:36:16 -0700 (Wed, 12 Nov 2008) | 18 lines It turns out that the 0x0XX00 codes being returned for N, X, and Z are off by one, as per conversation with jsmith on #asterisk-dev; he was teaching a class and disconcerted that this published rule was not being followed, with patterns _NXX, _[1-8]22 and _[2-9]22... and NXX was winning, but [1-8] should have been. This change, tested on these 3 patterns now picks the proper one. However, this change may surprise users who set up dialplans based on previous behavior, which has been there for what, 2 and half years or so now. ........ ................ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.1@156354 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- main/pbx.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/main/pbx.c b/main/pbx.c index fc75e0fbff..c77f650615 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -1700,13 +1700,13 @@ static int ext_cmp1(const char **p) return 0x0000 | (c & 0xff); case 'N': /* 2..9 */ - return 0x0700 | '2' ; + return 0x0800 | '2' ; case 'X': /* 0..9 */ - return 0x0900 | '0'; + return 0x0A00 | '0'; case 'Z': /* 1..9 */ - return 0x0800 | '1'; + return 0x0900 | '1'; case '.': /* wildcard */ return 0x10000;