aboutsummaryrefslogtreecommitdiff
path: root/contrib/libarchive/libarchive_fe/passphrase.c
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/libarchive/libarchive_fe/passphrase.c')
-rw-r--r--contrib/libarchive/libarchive_fe/passphrase.c4
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);
}