$NetBSD: patch-e_data_server_util_c,v 1.2 2012/05/06 04:34:03 dholland Exp $ In glib 2.30 G_UNICODE_COMBINING_MARK became known as G_UNICODE_SPACING_MARK, and g_unicode_canonical_decomposition was deprecated in favour of g_unichar_fully_decompose. --- libedataserver/e-data-server-util.c.orig 2011-04-21 19:35:37.000000000 +0000 +++ libedataserver/e-data-server-util.c @@ -245,7 +245,12 @@ e_util_utf8_strstrcase (const gchar *hay static gunichar stripped_char (gunichar ch) { - gunichar *decomp, retval; +#ifdef G_UNICODE_COMBINING_MARK + gunichar *decomp; +#else + gunichar decomp[4]; +#endif + gunichar retval; GUnicodeType utype; gsize dlen; @@ -255,16 +260,27 @@ stripped_char (gunichar ch) case G_UNICODE_CONTROL: case G_UNICODE_FORMAT: case G_UNICODE_UNASSIGNED: +#ifdef G_UNICODE_COMBINING_MARK case G_UNICODE_COMBINING_MARK: +#endif +#ifdef G_UNICODE_SPACING_MARK + case G_UNICODE_SPACING_MARK: +#endif /* Ignore those */ return 0; default: /* Convert to lowercase, fall through */ ch = g_unichar_tolower (ch); case G_UNICODE_LOWERCASE_LETTER: +#ifdef G_UNICODE_COMBINING_MARK if ((decomp = g_unicode_canonical_decomposition (ch, &dlen))) { +#else + if ((dlen = g_unichar_fully_decompose(ch, FALSE, decomp, 4))) { +#endif retval = decomp[0]; +#ifdef G_UNICODE_COMBINING_MARK g_free (decomp); +#endif return retval; } break;