summaryrefslogtreecommitdiffstats
path: root/sail/pl_7.c
diff options
context:
space:
mode:
authorwiz <wiz@NetBSD.org>2001-09-24 13:22:25 +0000
committerwiz <wiz@NetBSD.org>2001-09-24 13:22:25 +0000
commit190af08cf37d9e3ef84ed9e65660d702e2082d70 (patch)
treef9b4bc538372ab0488b413a86c3338354d4c1d09 /sail/pl_7.c
parentde348b6ea4939bf1e7ff2fa4ac0a319b2cf7ae51 (diff)
downloadbsdgames-darwin-190af08cf37d9e3ef84ed9e65660d702e2082d70.tar.gz
bsdgames-darwin-190af08cf37d9e3ef84ed9e65660d702e2082d70.tar.zst
bsdgames-darwin-190af08cf37d9e3ef84ed9e65660d702e2082d70.zip
va_{start,end} audit:
Make sure that each va_start has one and only one matching va_end, especially in error cases. If the va_list is used multiple times, do multiple va_starts/va_ends. If a function gets va_list as argument, don't let it use va_end (since it's the callers responsibility). Improved by comments from enami and christos -- thanks! Heimdal/krb4/KAME changes already fed back, rest to follow. Inspired by, but not not based on, OpenBSD.
Diffstat (limited to 'sail/pl_7.c')
-rw-r--r--sail/pl_7.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sail/pl_7.c b/sail/pl_7.c
index 1660761f..c752a52b 100644
--- a/sail/pl_7.c
+++ b/sail/pl_7.c
@@ -1,4 +1,4 @@
-/* $NetBSD: pl_7.c,v 1.24 2001/02/05 01:10:11 christos Exp $ */
+/* $NetBSD: pl_7.c,v 1.25 2001/09/24 13:22:29 wiz Exp $ */
/*
* Copyright (c) 1983, 1993
@@ -38,7 +38,7 @@
#if 0
static char sccsid[] = "@(#)pl_7.c 8.1 (Berkeley) 5/31/93";
#else
-__RCSID("$NetBSD: pl_7.c,v 1.24 2001/02/05 01:10:11 christos Exp $");
+__RCSID("$NetBSD: pl_7.c,v 1.25 2001/09/24 13:22:29 wiz Exp $");
#endif
#endif /* not lint */
@@ -178,9 +178,9 @@ Signal(const char *fmt, struct ship *ship, ...)
va_list ap;
char format[BUFSIZ];
- va_start(ap, ship);
if (!done_curses)
return;
+ va_start(ap, ship);
if (*fmt == '\7')
putchar(*fmt++);
fmtship(format, sizeof(format), fmt, ship);
@@ -195,9 +195,9 @@ Msg(const char *fmt, ...)
{
va_list ap;
- va_start(ap, fmt);
if (!done_curses)
return;
+ va_start(ap, fmt);
if (*fmt == '\7')
putchar(*fmt++);
vwprintw(scroll_w, fmt, ap);