aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNot Zed <NotZed@Ximian.com>2002-05-21 10:50:02 +0800
committerMichael Zucci <zucchi@src.gnome.org>2002-05-21 10:50:02 +0800
commit8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366 (patch)
tree62e8bccc07caff7b6ff04e479ae7d5d3fa80fc4d
parent09061834119ed7118b3ddb345c9257285376e02f (diff)
downloadgsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar.gz
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar.bz2
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar.lz
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar.xz
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.tar.zst
gsoc2013-evolution-8435ad3d2db7d4cb0cbed199cd58ef0a5e0ae366.zip
If we get an invalid start char, just ignore it and goto the next
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. svn path=/trunk/; revision=16960
-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;