diff options
Diffstat (limited to 'common/main.c')
| -rw-r--r-- | common/main.c | 8 | 
1 files changed, 4 insertions, 4 deletions
| diff --git a/common/main.c b/common/main.c index 7ce9b75f9..0869426f1 100644 --- a/common/main.c +++ b/common/main.c @@ -726,8 +726,8 @@ static void process_macros (const char *input, char *output)  	int inputcnt  = strlen (input);  	int outputcnt = CFG_CBSIZE;  	int state = 0;	/* 0 = waiting for '$'	*/ -			/* 1 = waiting for '('	*/ -			/* 2 = waiting for ')'	*/ +			/* 1 = waiting for '(' or '{' */ +			/* 2 = waiting for ')' or '}' */  			/* 3 = waiting for '''  */  #ifdef DEBUG_PARSER  	char *output_start = output; @@ -765,7 +765,7 @@ static void process_macros (const char *input, char *output)  		}  		break;  	    case 1:			/* Waiting for (	*/ -		if (c == '(') { +		if (c == '(' || c == '{') {  			state++;  			varname_start = input;  		} else { @@ -780,7 +780,7 @@ static void process_macros (const char *input, char *output)  		}  		break;  	    case 2:			/* Waiting for )	*/ -		if (c == ')') { +		if (c == ')' || c == '}') {  			int i;  			char envname[CFG_CBSIZE], *envval;  			int envcnt = input-varname_start-1; /* Varname # of chars */ |