From 0ed2f4cd26d3aa1ffddcbd152fa26f77aa0dad31 Mon Sep 17 00:00:00 2001 From: Eric Albright Date: Tue, 20 Nov 2007 08:22:02 +0000 Subject: Unicode normalization for comparing suggestion lists git-svn-id: svn+ssh://svn.abisource.com/svnroot/enchant/trunk@22318 bcba8976-2d24-0410-9c9c-aab3bd5fdfd6 --- src/enchant.c | 9 ++++++++- unittests/dictionary/enchant_dict_suggest_tests.cpp | 2 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/enchant.c b/src/enchant.c index a6882f1..6a25589 100644 --- a/src/enchant.c +++ b/src/enchant.c @@ -580,9 +580,16 @@ enchant_dict_merge_suggestions(EnchantDict * dict, copy = 0; else { + char * normalized_new_sugg; + + normalized_new_sugg = g_utf8_normalize (new_suggs[i], sugg_len, G_NORMALIZE_NFD); + for(j = 0; j < n_suggs; j++) { - if(strcmp(suggs[j],new_suggs[i])==0) + char* normalized_sugg; + normalized_sugg = g_utf8_normalize (suggs[j], -1, G_NORMALIZE_NFD); + + if(strcmp(normalized_sugg,normalized_new_sugg)==0) { copy = 0; /*duplicate*/ break; diff --git a/unittests/dictionary/enchant_dict_suggest_tests.cpp b/unittests/dictionary/enchant_dict_suggest_tests.cpp index b91703d..cc2f1e0 100644 --- a/unittests/dictionary/enchant_dict_suggest_tests.cpp +++ b/unittests/dictionary/enchant_dict_suggest_tests.cpp @@ -444,6 +444,8 @@ TEST_FIXTURE(EnchantDictionarySuggest_TestFixture, ExternalAddWordToDictionary(Convert(L"fiance\x301")); // NFD u0301 = Combining acute accent + ReloadTestDictionary(); + size_t cSuggestions; _suggestions = enchant_dict_suggest(_dict, "fiance", -1, &cSuggestions); CHECK(_suggestions); -- cgit v1.2.1