Module Name: src Committed By: christos Date: Tue May 20 15:05:09 UTC 2014
Modified Files: src/lib/libedit: eln.c Log Message: Always NULL terminate the argv[] array. From OpenBSD. To generate a diff of this commit: cvs rdiff -u -r1.15 -r1.16 src/lib/libedit/eln.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/lib/libedit/eln.c diff -u src/lib/libedit/eln.c:1.15 src/lib/libedit/eln.c:1.16 --- src/lib/libedit/eln.c:1.15 Wed Feb 26 08:50:29 2014 +++ src/lib/libedit/eln.c Tue May 20 11:05:08 2014 @@ -1,4 +1,4 @@ -/* $NetBSD: eln.c,v 1.15 2014/02/26 13:50:29 christos Exp $ */ +/* $NetBSD: eln.c,v 1.16 2014/05/20 15:05:08 christos Exp $ */ /*- * Copyright (c) 2009 The NetBSD Foundation, Inc. @@ -34,7 +34,7 @@ */ #include "config.h" #if !defined(lint) && !defined(SCCSID) -__RCSID("$NetBSD: eln.c,v 1.15 2014/02/26 13:50:29 christos Exp $"); +__RCSID("$NetBSD: eln.c,v 1.16 2014/05/20 15:05:08 christos Exp $"); #endif /* not lint && not SCCSID */ #include "histedit.h" @@ -158,10 +158,10 @@ el_set(EditLine *el, int op, ...) const char *argv[20]; int i; const wchar_t **wargv; - for (i = 1; i < (int)__arraycount(argv); ++i) - if ((argv[i] = va_arg(ap, char *)) == NULL) + for (i = 1; i < (int)__arraycount(argv) - 1; ++i) + if ((argv[i] = va_arg(ap, const char *)) == NULL) break; - argv[0] = NULL; + argv[0] = argv[i] = NULL; wargv = (const wchar_t **) ct_decode_argv(i + 1, argv, &el->el_lgcyconv); if (!wargv) {