X-Git-Url: https://git.exim.org/exim.git/blobdiff_plain/7e09992e0fb2d70750a686939636cf40f2a06ae3..cb570b5ea1ff234ae16b2c32a236ccd520a80f7a:/src/src/string.c diff --git a/src/src/string.c b/src/src/string.c index b76b0abbc..b559a9f19 100644 --- a/src/src/string.c +++ b/src/src/string.c @@ -970,7 +970,7 @@ return buffer; #ifndef COMPILE_UTILITY /************************************************ -* Add element to seperated list * +* Add element to separated list * ************************************************/ /* This function is used to build a list, returning an allocated null-terminated growable string. The @@ -1518,6 +1518,7 @@ specified messages. If it does, the message just gets truncated, and there doesn't seem much we can do about that. */ (void)string_vformat(buffer+15, sizeof(buffer) - 15, format, ap); +va_end(ap); return (eno == EACCES)? string_sprintf("%s: %s (euid=%ld egid=%ld)", buffer, strerror(eno), @@ -1553,7 +1554,7 @@ uschar * s; s = addr->prefix; if (testflag(addr, af_include_affixes) && s) { -#ifdef EXPERIMENTAL_INTERNATIONAL +#ifdef SUPPORT_I18N if (testflag(addr, af_utf8_downcvt)) s = string_localpart_utf8_to_alabel(s, NULL); #endif @@ -1561,7 +1562,7 @@ if (testflag(addr, af_include_affixes) && s) } s = addr->local_part; -#ifdef EXPERIMENTAL_INTERNATIONAL +#ifdef SUPPORT_I18N if (testflag(addr, af_utf8_downcvt)) s = string_localpart_utf8_to_alabel(s, NULL); #endif @@ -1570,7 +1571,7 @@ yield = string_cat(yield, sizeptr, ptrptr, s, Ustrlen(s)); s = addr->suffix; if (testflag(addr, af_include_affixes) && s) { -#ifdef EXPERIMENTAL_INTERNATIONAL +#ifdef SUPPORT_I18N if (testflag(addr, af_utf8_downcvt)) s = string_localpart_utf8_to_alabel(s, NULL); #endif @@ -1641,7 +1642,7 @@ else yield = string_get_localpart(addr, yield, &size, &ptr); yield = string_cat(yield, &size, &ptr, US"@", 1); s = addr->domain; -#ifdef EXPERIMENTAL_INTERNATIONAL +#ifdef SUPPORT_I18N if (testflag(addr, af_utf8_downcvt)) s = string_localpart_utf8_to_alabel(s, NULL); #endif @@ -1707,6 +1708,17 @@ return yield; #endif /* COMPILE_UTILITY */ +#ifndef COMPILE_UTILITY +/* qsort(3), currently used to sort the environment variables +for -bP environment output, needs a function to compare two pointers to string +pointers. Here it is. */ + +int +string_compare_by_pointer(const void *a, const void *b) +{ +return Ustrcmp(* CUSS a, * CUSS b); +} +#endif /* COMPILE_UTILITY */