summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoryasuoka <yasuoka@openbsd.org>2019-01-29 09:47:00 +0000
committeryasuoka <yasuoka@openbsd.org>2019-01-29 09:47:00 +0000
commit45e13dcbc13f9325c6eae482b9d8d72f5b38f2ac (patch)
treef3b5d7f06aac34ca11e6e195c512e3e043c34cd7
parentAccept control frames in monitor mode. (diff)
downloadwireguard-openbsd-45e13dcbc13f9325c6eae482b9d8d72f5b38f2ac.tar.xz
wireguard-openbsd-45e13dcbc13f9325c6eae482b9d8d72f5b38f2ac.zip
Terminate NULL in argv. This fix is come from 1.31 from NetBSD
lib/libedit/chartype.c via FreeBSD. From tj@ ok tb
-rw-r--r--lib/libedit/chartype.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/libedit/chartype.c b/lib/libedit/chartype.c
index 77ba9ab2754..dd3db3f7629 100644
--- a/lib/libedit/chartype.c
+++ b/lib/libedit/chartype.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: chartype.c,v 1.15 2016/04/11 21:17:29 schwarze Exp $ */
+/* $OpenBSD: chartype.c,v 1.16 2019/01/29 09:47:00 yasuoka Exp $ */
/* $NetBSD: chartype.c,v 1.6 2011/07/28 00:48:21 christos Exp $ */
/*-
@@ -145,7 +145,7 @@ ct_decode_argv(int argc, const char *argv[], ct_buffer_t *conv)
if (!conv->wsize)
return NULL;
- wargv = reallocarray(NULL, argc, sizeof(*wargv));
+ wargv = reallocarray(NULL, argc + 1, sizeof(*wargv));
for (i = 0, p = conv->wbuff; i < argc; ++i) {
if (!argv[i]) { /* don't pass null pointers to mbstowcs */
@@ -164,6 +164,7 @@ ct_decode_argv(int argc, const char *argv[], ct_buffer_t *conv)
bufspace -= wlen;
p += wlen;
}
+ wargv[i] = NULL;
return wargv;
}