diff -u -u -r1.23 rb-util.c
--- lib/rb-util.c	17 Apr 2006 14:35:24 -0000	1.23
+++ lib/rb-util.c	19 Apr 2006 05:27:56 -0000
@@ -495,6 +495,7 @@
 gchar*
 rb_search_fold (const char *original)
 {
+	gchar *normalised;
 	GString *string;
 	gunichar *unicode, *cur;
 	
@@ -503,7 +504,9 @@
 	/* old behaviour is equivalent to: return g_utf8_casefold (original, -1); */
 	
 	string = g_string_new (NULL);
-	unicode = g_utf8_to_ucs4_fast (original, -1, NULL);
+	normalised = g_utf8_normalize (original, -1, G_NORMALIZE_DEFAULT);
+	unicode = g_utf8_to_ucs4_fast (normalised, -1, NULL);
+	g_free (normalised);
 
 	for (cur = unicode; *cur != 0; cur++) {
 		switch (g_unichar_type (*cur)) {
