diff options
author | Milan Crha <mcrha@redhat.com> | 2007-11-05 20:55:12 +0800 |
---|---|---|
committer | Milan Crha <mcrha@src.gnome.org> | 2007-11-05 20:55:12 +0800 |
commit | aed824675f0cc43c90c43d6a0495ee952ed3a648 (patch) | |
tree | 64b8125095257aabc982c9fcf8a72494e63c9132 /e-util | |
parent | a98080fbbd0b8e9ee2d0d32dc4a9f6e3b2f01f11 (diff) | |
download | gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar.gz gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar.bz2 gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar.lz gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar.xz gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.tar.zst gsoc2013-evolution-aed824675f0cc43c90c43d6a0495ee952ed3a648.zip |
** Fix for bug #492692
2007-11-05 Milan Crha <mcrha@redhat.com>
** Fix for bug #492692
* e-util.c: (e_str_case_compare): Leak fix.
svn path=/trunk/; revision=34513
Diffstat (limited to 'e-util')
-rw-r--r-- | e-util/ChangeLog | 6 | ||||
-rw-r--r-- | e-util/e-util.c | 15 |
2 files changed, 19 insertions, 2 deletions
diff --git a/e-util/ChangeLog b/e-util/ChangeLog index d32f66f2f9..367105882e 100644 --- a/e-util/ChangeLog +++ b/e-util/ChangeLog @@ -1,3 +1,9 @@ +2007-11-05 Milan Crha <mcrha@redhat.com> + + ** Fix for bug #492692 + + * e-util.c: (e_str_case_compare): Leak fix. + 2007-11-03 Matthew Barnes <mbarnes@redhat.com> ** Remove dead files from source control. The dates below diff --git a/e-util/e-util.c b/e-util/e-util.c index 05bfdb4c0f..c27e2a60d8 100644 --- a/e-util/e-util.c +++ b/e-util/e-util.c @@ -98,14 +98,25 @@ e_str_compare (gconstpointer x, gconstpointer y) gint e_str_case_compare (gconstpointer x, gconstpointer y) { + gchar *cx, *cy; + gint res; + if (x == NULL || y == NULL) { if (x == y) return 0; else return x ? -1 : 1; } - - return g_utf8_collate (g_utf8_casefold (x, -1), g_utf8_casefold (y, -1)); + + cx = g_utf8_casefold (x, -1); + cy = g_utf8_casefold (y, -1); + + res = g_utf8_collate (cx, cy); + + g_free (cx); + g_free (cy); + + return res; } gint |