diff options
Diffstat (limited to 'libtemplate/parameter.c')
| -rw-r--r-- | libtemplate/parameter.c | 30 |
1 files changed, 17 insertions, 13 deletions
diff --git a/libtemplate/parameter.c b/libtemplate/parameter.c index b191d17..83597c8 100644 --- a/libtemplate/parameter.c +++ b/libtemplate/parameter.c @@ -342,20 +342,24 @@ int cConditionalParameter::EvaluateParameter(string token, map < string, int > * map < string, int >::iterator hitGlobals = globals->intVars.find(token); if (hitGlobals != globals->intVars.end()) { return hitGlobals->second; - } else { - //then check tokens - if (intTokens) { - map < string, int >::iterator hit = intTokens->find(token); - if (hit != intTokens->end()) { - return hit->second; - } + } + //then check custom tokens + map < string, int >::iterator hitCustomTokens = globals->customIntTokens.find(token); + if (hitCustomTokens != globals->customIntTokens.end()) { + return hitCustomTokens->second; + } + //then check tokens + if (intTokens) { + map < string, int >::iterator hit = intTokens->find(token); + if (hit != intTokens->end()) { + return hit->second; } - if (stringTokens) { - map < string, string >::iterator hit = stringTokens->find(token); - if (hit != stringTokens->end()) { - string value = hit->second; - return atoi(value.c_str()); - } + } + if (stringTokens) { + map < string, string >::iterator hit = stringTokens->find(token); + if (hit != stringTokens->end()) { + string value = hit->second; + return atoi(value.c_str()); } } return 0; |
