From 33fd55ca6f3efc50c260469179788e9f725ddc58 Mon Sep 17 00:00:00 2001 From: Werner Koch Date: Fri, 21 Aug 2020 11:28:08 +0200 Subject: common: Strip trailing CR,LF from w32_strerror. * common/stringhelp.c (w32_strerror): Strip trailing CR,LF. * common/iobuf.c (iobuf_get_filelength): Use -1 and not 0 for the arg to w32_strerror. -- This is in particular annoying since we started to use a string argument sanitizer in the logging code. Before that we just add an extra blank line. The second patch corrects a never yet seen error message. Signed-off-by: Werner Koch --- common/stringhelp.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'common/stringhelp.c') diff --git a/common/stringhelp.c b/common/stringhelp.c index 3424048f9..d7bb6bc37 100644 --- a/common/stringhelp.c +++ b/common/stringhelp.c @@ -789,6 +789,12 @@ w32_strerror (int ec) FormatMessage (FORMAT_MESSAGE_FROM_SYSTEM, NULL, ec, MAKELANGID (LANG_NEUTRAL, SUBLANG_DEFAULT), strerr, DIM (strerr)-1, NULL); + { + /* Strip the CR,LF - we want just the string. */ + size_t n = strlen (strerr); + if (n > 2 && strerr[n-2] == '\r' && strerr[n-1] == '\n' ) + strerr[n-2] = 0; + } #endif return strerr; } -- cgit v1.2.3