aboutsummaryrefslogtreecommitdiffstats
path: root/camel
diff options
context:
space:
mode:
Diffstat (limited to 'camel')
-rw-r--r--camel/ChangeLog5
-rw-r--r--camel/camel-search-private.c6
2 files changed, 9 insertions, 2 deletions
diff --git a/camel/ChangeLog b/camel/ChangeLog
index b25215bd99..7caa2a9cee 100644
--- a/camel/ChangeLog
+++ b/camel/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-18 Not Zed <NotZed@Ximian.com>
+
+ * camel-search-private.c (camel_utf8_getc): If we get an invalid
+ start char, just ignore it and goto the next character.
+
2002-05-16 Jeffrey Stedfast <fejj@ximian.com>
* camel-filter-search.c (get_label): New e-sexp callback function
diff --git a/camel/camel-search-private.c b/camel/camel-search-private.c
index 7e8553cd35..5adf2b146f 100644
--- a/camel/camel-search-private.c
+++ b/camel/camel-search-private.c
@@ -499,9 +499,9 @@ camel_utf8_getc(const unsigned char **ptr)
{
register unsigned char *p = (unsigned char *)*ptr;
register unsigned char c, r;
- register guint32 v=0, /* this is only required because the stupid @@@%#%# compiler thinks it can be used uninitialised */
- m;
+ register guint32 v, m;
+again:
r = *p++;
loop:
if (r < 0x80) {
@@ -524,6 +524,8 @@ loop:
*ptr = p;
v &= ~m;
+ } else {
+ goto again;
}
return v;