we need to escape more chars now, so fix that. test skins with this update parse correctly with the themeditor :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26468 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
496bcf39c7
commit
bbe6c5a5e2
1 changed files with 19 additions and 2 deletions
|
@ -36,8 +36,6 @@ bool is_mono_display = false;
|
|||
bool use_new_vp_tags = true;
|
||||
|
||||
|
||||
|
||||
|
||||
/* dump "count" args to output replacing '|' with ',' except after the last count.
|
||||
* return the amount of chars read. (start+return will be after the last | )
|
||||
*/
|
||||
|
@ -56,6 +54,10 @@ int dump_arg(FILE* out, const char* start, int count, bool close)
|
|||
}
|
||||
count--;
|
||||
} else {
|
||||
if (find_escape_character(start[l]))
|
||||
{
|
||||
PUTCH(out, '%');
|
||||
}
|
||||
PUTCH(out, start[l]);
|
||||
}
|
||||
l++;
|
||||
|
@ -264,6 +266,9 @@ top:
|
|||
case '>':
|
||||
case ';':
|
||||
case '#':
|
||||
case ')':
|
||||
case '(':
|
||||
case ',':
|
||||
PUTCH(out, *in++);
|
||||
goto top;
|
||||
break;
|
||||
|
@ -291,6 +296,14 @@ top:
|
|||
level--;
|
||||
PUTCH(out, *in++);
|
||||
}
|
||||
else if (*in == '|')
|
||||
{
|
||||
if (level == 0)
|
||||
{
|
||||
PUTCH(out, '%');
|
||||
}
|
||||
PUTCH(out, *in++);
|
||||
}
|
||||
else if (*in == '#')
|
||||
{
|
||||
while (*in && *in != '\n')
|
||||
|
@ -300,6 +313,10 @@ top:
|
|||
}
|
||||
else
|
||||
{
|
||||
if (find_escape_character(*in))
|
||||
{
|
||||
PUTCH(out, '%');
|
||||
}
|
||||
PUTCH(out, *in++);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue