From: Tilghman Lesher Date: Tue, 12 Jan 2010 19:59:23 +0000 (+0000) Subject: Merged revisions 239571 via svnmerge from X-Git-Tag: 1.6.0.23~54 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c00e8397c30e05b48cfe9fe64737259fae22f605;p=thirdparty%2Fasterisk.git Merged revisions 239571 via svnmerge from https://origsvn.digium.com/svn/asterisk/trunk ........ r239571 | tilghman | 2010-01-12 13:58:00 -0600 (Tue, 12 Jan 2010) | 5 lines Blank callerid and NULL callerid should not compare equal. The second is the default state for matching CID in the dialplan (no matching) while the first matches one particular CallerID. This is a regression. (fixes AST-314, SWP-611) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.6.0@239573 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/main/pbx.c b/main/pbx.c index 2103f39ca7..fac0cdafc4 100644 --- a/main/pbx.c +++ b/main/pbx.c @@ -6841,7 +6841,9 @@ static int ast_add_extension2_lockopt(struct ast_context *con, p += ext_strncpy(p, extension, strlen(extension) + 1) + 1; tmp->priority = priority; tmp->cidmatch = p; /* but use p for assignments below */ - if (!ast_strlen_zero(callerid)) { + + /* Blank callerid and NULL callerid are two SEPARATE things. Do NOT confuse the two!!! */ + if (callerid) { p += ext_strncpy(p, callerid, strlen(callerid) + 1) + 1; tmp->matchcid = 1; } else {