From: Vsevolod Stakhov Date: Thu, 2 Apr 2015 10:37:19 +0000 (+0100) Subject: More fixes to utf8 lc. X-Git-Tag: 0.9.0~351 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=063498ae63348de0c27eb0260cc7633bbc822df9;p=thirdparty%2Frspamd.git More fixes to utf8 lc. --- diff --git a/src/libutil/util.c b/src/libutil/util.c index 51445a8ba7..645c3d2fe9 100644 --- a/src/libutil/util.c +++ b/src/libutil/util.c @@ -677,7 +677,7 @@ rspamd_str_lc_utf8 (gchar *str, guint size) { const gchar *s = str, *p; gchar *d = str; - guint remain = size; + gint remain = size; gint r; gunichar uc; @@ -686,12 +686,12 @@ rspamd_str_lc_utf8 (gchar *str, guint size) uc = g_unichar_tolower (uc); p = g_utf8_next_char (s); - if (p - s == 0) { - return; + if (p - s > remain) { + break; } r = g_unichar_to_utf8 (uc, d); - g_assert (r > 0); + g_assert (remain >= r); remain -= r; s = p; d += r;