summaryrefslogtreecommitdiff
path: root/src/libtracker-common
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2018-10-01 01:40:29 +0200
committerCarlos Garnacho <carlosg@gnome.org>2018-10-12 11:59:05 +0200
commit53759e7ccec16b659bc55120d4eb18080208efad (patch)
treec5e9280d843d5a1bb8177c7c194c08a01d207b06 /src/libtracker-common
parentc6c01d113416649032b409639ba45f2fc3e68a0a (diff)
downloadtracker-53759e7ccec16b659bc55120d4eb18080208efad.tar.gz
libtracker-common,data: Port libicu paths to unorm2_normalizewip/carlosg/compiler-warnings
The old unorm_normalize() function has been deprecated. This replacement function is available on ICU >= 4.4, so we should be fine dependency-wise.
Diffstat (limited to 'src/libtracker-common')
-rw-r--r--src/libtracker-common/tracker-parser-libicu.c19
-rw-r--r--src/libtracker-common/tracker-parser.h2
2 files changed, 13 insertions, 8 deletions
diff --git a/src/libtracker-common/tracker-parser-libicu.c b/src/libtracker-common/tracker-parser-libicu.c
index d6410d346..cbd260a2c 100644
--- a/src/libtracker-common/tracker-parser-libicu.c
+++ b/src/libtracker-common/tracker-parser-libicu.c
@@ -272,6 +272,7 @@ process_word_uchar (TrackerParser *parser,
if (type != TRACKER_PARSER_WORD_TYPE_ASCII) {
UChar casefolded_buffer [WORD_BUFFER_LENGTH];
+ const UNormalizer2 *normalizer;
/* Casefold... */
new_word_length = u_strFoldCase (casefolded_buffer,
@@ -294,13 +295,17 @@ process_word_uchar (TrackerParser *parser,
new_word_length * sizeof (UChar));
/* NFKD normalization... */
- new_word_length = unorm_normalize (casefolded_buffer,
- new_word_length,
- UNORM_NFKD,
- 0,
- normalized_buffer,
- WORD_BUFFER_LENGTH,
- &error);
+ normalizer = unorm2_getNFKDInstance (&error);
+
+ if (U_SUCCESS (error)) {
+ new_word_length = unorm2_normalize (normalizer,
+ casefolded_buffer,
+ new_word_length,
+ normalized_buffer,
+ WORD_BUFFER_LENGTH,
+ &error);
+ }
+
if (U_FAILURE (error)) {
g_warning ("Error normalizing: '%s'",
u_errorName (error));
diff --git a/src/libtracker-common/tracker-parser.h b/src/libtracker-common/tracker-parser.h
index 90c8facc3..28b9e1cb1 100644
--- a/src/libtracker-common/tracker-parser.h
+++ b/src/libtracker-common/tracker-parser.h
@@ -30,7 +30,7 @@
* at runtime, the former must be rebuilt for those to match perfectly
* to avoid returning meaningless results on FTS searches.
*/
-#define TRACKER_PARSER_VERSION 1
+#define TRACKER_PARSER_VERSION 2
G_BEGIN_DECLS