From: Rusty Russell Date: Mon, 28 Mar 2011 03:58:22 +0000 (+1030) Subject: failtest: continue (without failing) if we run off end of --failpath= X-Git-Url: https://git.ozlabs.org/?p=ccan;a=commitdiff_plain;h=3ad57bc902f31ba347df59de04168f00c626d924;hp=024fbb5f9682d3187b65849948c372c3879ed9bd failtest: continue (without failing) if we run off end of --failpath= This is important because we tell people to use --failpath to reproduce a failure, but the fail path we list only goes up to the last failure injection if the child dies, for example. Thanks to David Gibson for prodding me to fix this... --- diff --git a/ccan/failtest/failtest.c b/ccan/failtest/failtest.c index 7a6f5220..b25b049e 100644 --- a/ccan/failtest/failtest.c +++ b/ccan/failtest/failtest.c @@ -364,7 +364,10 @@ static bool should_fail(struct failtest_call *call) /* + means continue after end, like normal. */ if (*failpath == '+') failpath = NULL; - else { + else if (*failpath == '\0') { + /* Continue, but don't inject errors. */ + return call->fail = false; + } else { if (tolower((unsigned char)*failpath) != info_to_arg[call->type]) errx(1, "Failpath expected '%c' got '%c'\n",