From: Cole Robinson Date: Tue, 23 Nov 2010 16:01:03 +0000 (-0500) Subject: tests: Fix dispatching internal error reports X-Git-Tag: v0.8.6~29 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=b2399b06c5268b18f9a85b23968ecbaec4800999;p=thirdparty%2Flibvirt.git tests: Fix dispatching internal error reports Without this fix, the test suite doesn't print error messages when a libvirt function fails. Additionally, only print error reports if DEBUG or VERBOSE requested. --- diff --git a/tests/testutils.c b/tests/testutils.c index 96181b2db6..17584acaac 100644 --- a/tests/testutils.c +++ b/tests/testutils.c @@ -126,13 +126,20 @@ virtTestRun(const char *title, int nloops, int (*body)(const void *data), const if (ts) GETTIMEOFDAY(&before); + virResetLastError(); - if ((ret = body(data)) != 0) - break; + ret = body(data); virErrorPtr err = virGetLastError(); - if (err) - virDispatchError(NULL); - if (ts) { + if (err) { + if (virTestGetVerbose() || virTestGetDebug()) + virDispatchError(NULL); + } + + if (ret != 0) { + break; + } + + if (ts) { GETTIMEOFDAY(&after); ts[i] = DIFF_MSEC(&after, &before); }