summaryrefslogtreecommitdiffstats
path: root/gettext-tools/src
diff options
context:
space:
mode:
Diffstat (limited to 'gettext-tools/src')
-rw-r--r--gettext-tools/src/ChangeLog8
-rw-r--r--gettext-tools/src/x-c.c4
-rw-r--r--gettext-tools/src/x-vala.c2
3 files changed, 13 insertions, 1 deletions
diff --git a/gettext-tools/src/ChangeLog b/gettext-tools/src/ChangeLog
index b766d30..f492e00 100644
--- a/gettext-tools/src/ChangeLog
+++ b/gettext-tools/src/ChangeLog
@@ -1,3 +1,11 @@
+2014-06-07 Daiki Ueno <ueno@gnu.org>
+
+ xgettext: Fix misrecognition of character literals in C and Vala
+ Problem reported by Paul Eggert at
+ <http://lists.gnu.org/archive/html/bug-gettext/2014-06/msg00015.html>.
+ * x-c.c (phase5_get): Make sure to skip contents of character constant.
+ * x-vala.c (phase3_get): Likewise.
+
2014-06-03 Daiki Ueno <ueno@gnu.org>
desktop: Use logical filename as msgid location
diff --git a/gettext-tools/src/x-c.c b/gettext-tools/src/x-c.c
index 2ae2f3c..203eb79 100644
--- a/gettext-tools/src/x-c.c
+++ b/gettext-tools/src/x-c.c
@@ -1288,6 +1288,8 @@ phase5_get (token_ty *tp)
{
case '\\':
last_was_backslash = true;
+ /* FALLTHROUGH */
+ default:
continue;
case '\n':
error_with_progname = false;
@@ -1299,7 +1301,7 @@ phase5_get (token_ty *tp)
case EOF: case '\'':
break;
}
- break;
+ break;
}
tp->type = token_type_character_constant;
return;
diff --git a/gettext-tools/src/x-vala.c b/gettext-tools/src/x-vala.c
index 1d88f47..288f9b7 100644
--- a/gettext-tools/src/x-vala.c
+++ b/gettext-tools/src/x-vala.c
@@ -622,6 +622,8 @@ phase3_get (token_ty *tp)
{
case '\\':
last_was_backslash = true;
+ /* FALLTHROUGH */
+ default:
continue;
case '\n':
error_with_progname = false;