]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib: unichar - Move uni_ucs4_decompose_one_utf8() to unicode-transform.c
authorStephan Bosch <stephan.bosch@open-xchange.com>
Fri, 21 Mar 2025 04:48:48 +0000 (05:48 +0100)
committerStephan Bosch <stephan.bosch@open-xchange.com>
Fri, 1 Aug 2025 01:11:19 +0000 (03:11 +0200)
src/lib/unichar.c
src/lib/unicode-transform.c

index 43da11443ec8ed4979a73099b2c2744f7bf73945..e1aec6371e005cec98e5c67b4fa94f6242c1cd8e 100644 (file)
@@ -239,28 +239,6 @@ unichar_t uni_ucs4_to_titlecase(unichar_t chr)
 
 #include "unicode-transform.c"
 
-static void
-uni_ucs4_decompose_one_utf8(unichar_t chr, bool canonical, buffer_t *output)
-{
-       const unichar_t *decomp;
-       size_t len, i;
-
-       if (chr >= HANGUL_FIRST && chr <= HANGUL_LAST) {
-               uni_ucs4_decompose_hangul_utf8(chr, output);
-               return;
-       }
-
-       len = unicode_code_point_get_full_decomposition(chr, canonical,
-                                                       &decomp);
-       if (len == 0) {
-               uni_ucs4_to_utf8_c(chr, output);
-               return;
-       }
-
-       for (i = 0; i < len; i++)
-               uni_ucs4_to_utf8_c(decomp[i], output);
-}
-
 static void output_add_replacement_char(buffer_t *output)
 {
        if (output->used >= UTF8_REPLACEMENT_CHAR_LEN &&
index 5bc2bff00a565884e4722dcfdd04df8019603f00..6bdcd39a28e7b21f23d6d0afea31c395babf0cc8 100644 (file)
@@ -52,3 +52,25 @@ static void uni_ucs4_decompose_hangul_utf8(unichar_t chr, buffer_t *output)
        for (i = 0; i < len; i++)
                uni_ucs4_to_utf8_c(buf[i], output);
 }
+
+static void
+uni_ucs4_decompose_one_utf8(unichar_t chr, bool canonical, buffer_t *output)
+{
+       const unichar_t *decomp;
+       size_t len, i;
+
+       if (chr >= HANGUL_FIRST && chr <= HANGUL_LAST) {
+               uni_ucs4_decompose_hangul_utf8(chr, output);
+               return;
+       }
+
+       len = unicode_code_point_get_full_decomposition(chr, canonical,
+                                                       &decomp);
+       if (len == 0) {
+               uni_ucs4_to_utf8_c(chr, output);
+               return;
+       }
+
+       for (i = 0; i < len; i++)
+               uni_ucs4_to_utf8_c(decomp[i], output);
+}