From c25c80704c04488dfc85fe0ebb506d45b64dd038 Mon Sep 17 00:00:00 2001 From: Colin Leroy Date: Tue, 24 Aug 2004 09:16:16 +0000 Subject: [PATCH] 2004-08-24 [colin] 0.9.12cvs79.3 * src/matcher_parser_lex.l Fix 8bits strings not in utf8 --- ChangeLog-gtk2.claws | 5 +++++ PATCHSETS | 1 + configure.ac | 2 +- src/matcher_parser_lex.l | 8 ++++++++ 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/ChangeLog-gtk2.claws b/ChangeLog-gtk2.claws index 999abddaa..9865ae0ca 100644 --- a/ChangeLog-gtk2.claws +++ b/ChangeLog-gtk2.claws @@ -1,3 +1,8 @@ +2004-08-24 [colin] 0.9.12cvs79.3 + + * src/matcher_parser_lex.l + Fix 8bits strings not in utf8 + 2004-08-24 [colin] 0.9.12cvs79.2 * src/compose.c diff --git a/PATCHSETS b/PATCHSETS index 7fa4111be..c1e9e05f7 100644 --- a/PATCHSETS +++ b/PATCHSETS @@ -135,3 +135,4 @@ ( cvs diff -u -r 1.30.2.1 -r 1.30.2.2 src/rfc2015.c; cvs diff -u -r 1.7.2.1 -r 1.7.2.2 src/rfc2015.h; ) > 0.9.12cvs78.1.patchset ( cvs diff -u -r 1.382.2.44 -r 1.382.2.45 src/compose.c; ) > 0.9.12cvs79.1.patchset ( cvs diff -u -r 1.382.2.45 -r 1.382.2.46 src/compose.c; ) > 0.9.12cvs79.2.patchset +( cvs diff -u -r 1.16.2.1 -r 1.16.2.2 src/matcher_parser_lex.l; ) > 0.9.12cvs79.3.patchset diff --git a/configure.ac b/configure.ac index 7bbf9394d..7e0d4f9c3 100644 --- a/configure.ac +++ b/configure.ac @@ -13,7 +13,7 @@ INTERFACE_AGE=0 BINARY_AGE=0 EXTRA_VERSION=79 EXTRA_RELEASE= -EXTRA_GTK2_VERSION=.2 +EXTRA_GTK2_VERSION=.3 if test \( $EXTRA_VERSION -eq 0 \) -o \( "x$EXTRA_RELEASE" != "x" \); then VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}${EXTRA_RELEASE}${EXTRA_GTK2_VERSION} diff --git a/src/matcher_parser_lex.l b/src/matcher_parser_lex.l index 12b421bd9..53a3412fd 100644 --- a/src/matcher_parser_lex.l +++ b/src/matcher_parser_lex.l @@ -21,6 +21,7 @@ #include #include +#include "codeconv.h" #include "matcher.h" #include "matcher_parser_lex.h" #include "matcher_parser_parse.h" @@ -80,6 +81,13 @@ void matcher_parser_init(void) /* get out of the state: string ends. */ BEGIN(0); *string_buf_ptr = '\0'; + if (!g_utf8_validate(string_buf, -1, NULL)) { + gchar *tmp = conv_codeset_strdup(string_buf, conv_get_current_charset_str(), CS_UTF_8); + if (tmp) { + strcpy(string_buf, tmp); + g_free(tmp); + } + } yylval.str = string_buf; return MATCHER_STRING; } -- 2.25.1