diff options
Diffstat (limited to 'contrib/libarchive/libarchive_fe/passphrase.c')
-rw-r--r-- | contrib/libarchive/libarchive_fe/passphrase.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/contrib/libarchive/libarchive_fe/passphrase.c b/contrib/libarchive/libarchive_fe/passphrase.c index 9d95d527067b..90fef32d254c 100644 --- a/contrib/libarchive/libarchive_fe/passphrase.c +++ b/contrib/libarchive/libarchive_fe/passphrase.c @@ -76,6 +76,7 @@ #if defined(_WIN32) && !defined(__CYGWIN__) +#include <string.h> #include <windows.h> static char * @@ -113,8 +114,7 @@ readpassphrase(const char *prompt, char *buf, size_t bufsiz, int flags) WriteFile(hStdout, "\r\n", 2, NULL, NULL); buf[rbytes] = '\0'; /* Remove trailing carriage return(s). */ - if (rbytes > 2 && buf[rbytes - 2] == '\r' && buf[rbytes - 1] == '\n') - buf[rbytes - 2] = '\0'; + buf[strcspn(buf, "\r\n")] = '\0'; return (buf); } |