diff options
author | phk <phk@FreeBSD.org> | 2003-06-07 10:16:53 +0000 |
---|---|---|
committer | phk <phk@FreeBSD.org> | 2003-06-07 10:16:53 +0000 |
commit | 69b4e9ce0114dea78c811d6c01cd8ebd9b810fc5 (patch) | |
tree | e42f41384b3d3867c6ecb12f9c7c63491a6db503 /sys/geom/geom_event.c | |
parent | 10afeb827154cef535bf9fb2c0fc4a2d5af0849d (diff) | |
download | FreeBSD-src-69b4e9ce0114dea78c811d6c01cd8ebd9b810fc5.zip FreeBSD-src-69b4e9ce0114dea78c811d6c01cd8ebd9b810fc5.tar.gz |
Add missing va_end() calls.
Noticed by: tmm
Diffstat (limited to 'sys/geom/geom_event.c')
-rw-r--r-- | sys/geom/geom_event.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/geom/geom_event.c b/sys/geom/geom_event.c index cf59749..12092e4 100644 --- a/sys/geom/geom_event.c +++ b/sys/geom/geom_event.c @@ -255,7 +255,6 @@ g_post_event_x(g_event_t *func, void *arg, int flag, struct g_event **epp, va_li g_trace(G_T_TOPOLOGY, " ref %p", p); ep->ref[n++] = p; } - va_end(ap); KASSERT(p == NULL, ("Too many references to event")); ep->func = func; ep->arg = arg; @@ -273,11 +272,14 @@ int g_post_event(g_event_t *func, void *arg, int flag, ...) { va_list ap; + int i; - va_start(ap, flag); KASSERT(flag == M_WAITOK || flag == M_NOWAIT, ("Wrong flag to g_post_event")); - return (g_post_event_x(func, arg, flag, NULL, ap)); + va_start(ap, flag); + i = g_post_event_x(func, arg, flag, NULL, ap); + va_end(ap); + return (i); } @@ -296,10 +298,11 @@ g_waitfor_event(g_event_t *func, void *arg, int flag, ...) int error; /* g_topology_assert_not(); */ - va_start(ap, flag); KASSERT(flag == M_WAITOK || flag == M_NOWAIT, ("Wrong flag to g_post_event")); + va_start(ap, flag); error = g_post_event_x(func, arg, flag | EV_WAKEUP, &ep, ap); + va_end(ap); if (error) return (error); do |