From 1255a271d4dfefff169585ece67b23af0c22fa26 Mon Sep 17 00:00:00 2001
From: "Michael L. Young" <elgueromexicano@gmail.com>
Date: Mon, 12 Nov 2012 20:16:57 +0000
Subject: [PATCH] Fix Dynamic Hints Variable Substition - Underscore Problem

When adding a dynamic hint, if an extension contains an underscore no variable
subsitution is being performed.

This patch changes from checking if the extension contains an underscore to
checking if the extension begins with an underscore.

(closes issue ASTERISK-20639)
Reported by: Steven T. Wheeler
Tested by: Steven T. Wheeler, Michael L. Young
Patches:
  asterisk-20639-dynamic-hint-underscore.diff
                                     uploaded by Michael L. Young (license 5026)

Review: https://reviewboard.asterisk.org/r/2188/
........

Merged revisions 376142 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 376143 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/11@376144 65c4cc65-6c06-0410-ace0-fbb531ad65f3
---
 main/pbx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/main/pbx.c b/main/pbx.c
index 7554f29e94..be513fe23f 100644
--- a/main/pbx.c
+++ b/main/pbx.c
@@ -9565,7 +9565,7 @@ static int ast_add_extension2_lockopt(struct ast_context *con,
 	}
 
 	/* If we are adding a hint evalulate in variables and global variables */
-	if (priority == PRIORITY_HINT && strstr(application, "${") && !strstr(extension, "_")) {
+	if (priority == PRIORITY_HINT && strstr(application, "${") && extension[0] != '_') {
 		struct ast_channel *c = ast_dummy_channel_alloc();
 
 		if (c) {
-- 
GitLab