X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/d5b80e59458182b2d557a929a18cb8c70cd56b68..f3c73adaa541ae54092467a29668ac32894ef1dc:/src/src/utf8.c diff --git a/src/src/utf8.c b/src/src/utf8.c index 4647785b9..dec72280f 100644 --- a/src/src/utf8.c +++ b/src/src/utf8.c @@ -2,7 +2,7 @@ * Exim - an Internet mail transport agent * *************************************************/ -/* Copyright (c) Jeremy Harris 2015, 2016 */ +/* Copyright (c) Jeremy Harris 2015 - 2018 */ /* See the file NOTICE for conditions of use and distribution. */ @@ -97,8 +97,7 @@ string_domain_alabel_to_utf8(const uschar * alabel, uschar ** err) #ifdef SUPPORT_I18N_2008 const uschar * label; int sep = '.'; -uschar * s = NULL; -int size = 0, len = 0; +gstring * g = NULL; while (label = string_nextinlist(&alabel, &sep, NULL, 0)) if ( string_is_alabel(label) @@ -106,8 +105,8 @@ while (label = string_nextinlist(&alabel, &sep, NULL, 0)) ) return NULL; else - s = string_append_listele(s, &size, &len, '.', label); -return s; + g = string_append_listele(g, '.', label); +return string_from_gstring(g); #else @@ -209,15 +208,13 @@ Return NULL on error, with (optional) errstring pointer filled in uschar * string_address_utf8_to_alabel(const uschar * utf8, uschar ** err) { -const uschar * s; -uschar * l; -uschar * d; +uschar * l, * d; if (!*utf8) return string_copy(utf8); DEBUG(D_expand) debug_printf("addr from utf8 <%s>", utf8); -for (s = utf8; *s; s++) +for (const uschar * s = utf8; *s; s++) if (*s == '@') { l = string_copyn(utf8, s - utf8);