* Exim - an Internet mail transport agent *
*************************************************/
-/* Copyright (c) University of Cambridge 1995 - 2012 */
+/* Copyright (c) University of Cambridge 1995 - 2014 */
/* See the file NOTICE for conditions of use and distribution. */
/* Miscellaneous string-handling functions. Some are not required for
/* Get a new block of store guaranteed big enough to hold the
expanded string. */
-ss = store_get(length + nonprintcount * 4 + 1);
+ss = store_get(length + nonprintcount * 3 + 1);
/* Copy everying, escaping non printers. */
va_start(ap, format);
if (!string_vformat(buffer, sizeof(buffer), format, ap))
log_write(0, LOG_MAIN|LOG_PANIC_DIE,
- "string_sprintf expansion was longer than " SIZE_T_FMT, sizeof(buffer));
+ "string_sprintf expansion was longer than " SIZE_T_FMT " (%s)",
+ sizeof(buffer), format);
va_end(ap);
return string_copy(buffer);
}
new = string_cat(new, &sz, &off, &sep, 1);
}
-while (sp = Ustrchr(ele, sep))
+while((sp = Ustrchr(ele, sep)))
{
new = string_cat(new, &sz, &off, ele, sp-ele+1);
new = string_cat(new, &sz, &off, &sep, 1);