summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorlouis <louis.braun@gmx.de>2015-04-30 17:11:34 +0200
committerlouis <louis.braun@gmx.de>2015-04-30 17:11:34 +0200
commit563a0485ee0881ad747a7ff9d6c43544277ed594 (patch)
tree92cc1a783c463c58019331fd75788635cf24cafb
parent4fe74f843967d9823c027fc526e41a738573fa2b (diff)
downloadvdr-plugin-skindesigner-563a0485ee0881ad747a7ff9d6c43544277ed594.tar.gz
vdr-plugin-skindesigner-563a0485ee0881ad747a7ff9d6c43544277ed594.tar.bz2
fixed bug that tokens in image pathes are not replaced correctly
-rw-r--r--HISTORY1
-rw-r--r--libtemplate/templatefunction.c12
2 files changed, 13 insertions, 0 deletions
diff --git a/HISTORY b/HISTORY
index 17f10c3..2a98146 100644
--- a/HISTORY
+++ b/HISTORY
@@ -304,5 +304,6 @@ Version 0.4.3
in displaychannel
- added cardsystem name to ecm info
- added correct menucategory for skin setups
+- fixed bug that tokens in image pathes are not replaced correctly
diff --git a/libtemplate/templatefunction.c b/libtemplate/templatefunction.c
index c99fa37..e186621 100644
--- a/libtemplate/templatefunction.c
+++ b/libtemplate/templatefunction.c
@@ -1292,6 +1292,12 @@ void cTemplateFunction::ParseStringParameters(void) {
for (map < string, string >::iterator it = stringTokens->begin(); it != stringTokens->end(); it++) {
size_t found = path.find(it->first);
if (found != string::npos) {
+ size_t posEndBracket = found + (it->first).size();
+ if (posEndBracket < path.size()) {
+ string endChar = path.substr(posEndBracket, 1);
+ if (endChar.compare("}"))
+ continue;
+ }
updated = true;
imgPath = path;
if (found > 0 && ((it->first).size() + 2 <= imgPath.size()))
@@ -1302,6 +1308,12 @@ void cTemplateFunction::ParseStringParameters(void) {
for (map < string, int >::iterator it = intTokens->begin(); it != intTokens->end(); it++) {
size_t found = path.find(it->first);
if (found != string::npos) {
+ size_t posEndBracket = found + (it->first).size();
+ if (posEndBracket < path.size()) {
+ string endChar = path.substr(posEndBracket, 1);
+ if (endChar.compare("}"))
+ continue;
+ }
updated = true;
imgPath = path;
if (found > 0 && ((it->first).size() + 2 <= imgPath.size())) {