dcb783533ad1d6944db7c227cde46414a575d81c |
|
23-Dec-2016 |
Timo Sirainen <timo.sirainen@dovecot.fi> |
lib-fts: Change fts_icu_*() to use ARRAY_TYPE(icu_utf16) for UTF16 input.
This makes it clearer how the API is intended to be used. |
7c1ce38a29ecdc17480aacb5bac184f42ac05786 |
|
25-Nov-2015 |
Teemu Huovila <teemu.huovila@dovecot.fi> |
lib-fts: Move ICU transliterator creation to fts-icu.h
This allows others to use transliterators without so much code duplication.
The transliterator still has to be destroyed by the user, with utrans_close(). |
37dfa8907f8216aa73e3880f3f98aba634458e42 |
|
02-Jun-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fts: Added fts_icu_lcase() |
d3acad538059ba27f269d390516be7e9fb44294f |
|
02-Jun-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fts: Do all the ICU cleanup in fts_icu_deinit(). |
bf698b98d3a3a1eced66cc682c449f23bf2b67d0 |
|
16-May-2015 |
Timo Sirainen <tss@iki.fi> |
lib-fts: Rewrite ICU handling functions.
Some of the changes:
- Use buffers instead of allocating everything from data stack.
- Optimistically attempt to write the data directly to the buffers without
first calculating their size. Grow the buffer if it doesn't fit first.
- Use u_strFromUTF8Lenient() instead of u_strFromUTF8(). Our input is
already supposed to be valid UTF-8, although we don't check if all code
points are valid, while u_strFromUTF8() does check them and return failures.
We don't really care about if code points are valid or not and
u_strFromUTF8Lenient() passes through everything.
Added unit tests to make sure all the functions work as intended and all the
UTF-8 input passes through them successfully. |