diff options
author | Behdad Esfahbod <behdad@gnome.org> | 2006-04-28 15:14:47 +0000 |
---|---|---|
committer | Behdad Esfahbod <behdad@src.gnome.org> | 2006-04-28 15:14:47 +0000 |
commit | 73747bd0e4599b0777149215b6ae2a982e1166d9 (patch) | |
tree | 5371ab51d9ae9708c632eceacbbf180dc9e0d7db /pango/pango-utils.c | |
parent | 328a89098e50c5d007c57467d7b143ca8d28ca9f (diff) | |
download | pango-73747bd0e4599b0777149215b6ae2a982e1166d9.tar.gz |
Bug 339749 – pango_language_from_string issues Patch from Morten
2006-04-28 Behdad Esfahbod <behdad@gnome.org>
Bug 339749 – pango_language_from_string issues
Patch from Morten Welinder.
* pango/pango-utils.c (lang_equal): Make the equal function symmetric.
Diffstat (limited to 'pango/pango-utils.c')
-rw-r--r-- | pango/pango-utils.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/pango/pango-utils.c b/pango/pango-utils.c index 2e3b95a5..8f04a709 100644 --- a/pango/pango-utils.c +++ b/pango/pango-utils.c @@ -1171,15 +1171,17 @@ lang_equal (gconstpointer v1, const guchar *p1 = v1; const guchar *p2 = v2; - while (*p2) + while (*p1 && *p2) { - guchar value = canon_map[*p2]; - if (value && value != *p1++) - return FALSE; - p2++; + guchar c1 = canon_map[*p1]; + guchar c2 = canon_map[*p2]; + if (!c1) { p1++; continue; } + if (!c2) { p2++; continue; } + if (c1 != c2) return FALSE; + p1++, p2++; } - return (*p1 == '\0'); + return (*p1 == *p2); } static guint |