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.4@156297 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Steve Murphy 17 years ago
parent 7e353eeaa1
commit 3557bc1b4d

@ -665,13 +665,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;

Loading…
Cancel
Save