mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-22 20:56:39 +00:00
Bumped across another test set for the new exten pattern matcher, which revealed a problem with the CANMATCH/MATCHMORE modes. Direct matches were getting in the way. Fixed.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@112357 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -1015,9 +1015,11 @@ static void new_find_extension(const char *str, struct scoreboard *score, struct
|
||||
if (p->x[1] == 0 && *str >= '2' && *str <= '9' ) {
|
||||
#define NEW_MATCHER_CHK_MATCH \
|
||||
if (p->exten && !(*(str+1))) { /* if a shorter pattern matches along the way, might as well report it */ \
|
||||
update_scoreboard(score, length+1, spec+p->specificity, p->exten,0,callerid, p->deleted, p); \
|
||||
if (!p->deleted) \
|
||||
return; /* the first match, by definition, will be the best, because of the sorted tree */ \
|
||||
if (action == E_MATCH) { /* if in CANMATCH/MATCHMORE, don't let matches get in the way */ \
|
||||
update_scoreboard(score, length+1, spec+p->specificity, p->exten,0,callerid, p->deleted, p); \
|
||||
if (!p->deleted) \
|
||||
return; /* the first match, by definition, will be the best, because of the sorted tree */ \
|
||||
} \
|
||||
}
|
||||
|
||||
#define NEW_MATCHER_RECURSE \
|
||||
|
Reference in New Issue
Block a user