Commit 612c280e authored by Sam Ravnborg's avatar Sam Ravnborg

kconfig: fix update-po-config to accect backslash in input

Massimo Maiurana reported (slightly edited):

=====
In latest 2.6.29 "make update-po-config" fails at msguniq invocation
with an "invalid control sequence" error.
The offending string is the following, and it's located in
drivers/staging/panel/Kconfig:72:

    "'\e[L' which are specific to the LCD, and a few ANSI codes. The"

looks to me like gettext expects strings in printf format, so in
this case it thinks "\e" is a control sequence but doesn't recognise
it as a valid one.

A valid solution would be to tell kxgettext to automatically
escape this kind of strings in the */config.pot he produces, so that
msguniq would not complain.
=====

This patch implements the suggested escaping.
Reported-by: default avatarMassimo Maiurana <maiurana@gmail.com>
Tested-by: default avatarMassimo Maiurana <maiurana@gmail.com>
Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
parent 79ff807c
...@@ -43,6 +43,10 @@ static char *escape(const char* text, char *bf, int len) ...@@ -43,6 +43,10 @@ static char *escape(const char* text, char *bf, int len)
++text; ++text;
goto next; goto next;
} }
else if (*text == '\\') {
*bfp++ = '\\';
len--;
}
*bfp++ = *text++; *bfp++ = *text++;
next: next:
--len; --len;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment