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.
This commit is contained in:
Cole Robinson 2010-11-23 11:01:03 -05:00
parent 149c492137
commit b2399b06c5
1 changed files with 12 additions and 5 deletions

View File

@ -126,13 +126,20 @@ virtTestRun(const char *title, int nloops, int (*body)(const void *data), const
if (ts) if (ts)
GETTIMEOFDAY(&before); GETTIMEOFDAY(&before);
virResetLastError(); virResetLastError();
if ((ret = body(data)) != 0) ret = body(data);
break;
virErrorPtr err = virGetLastError(); virErrorPtr err = virGetLastError();
if (err) if (err) {
virDispatchError(NULL); if (virTestGetVerbose() || virTestGetDebug())
if (ts) { virDispatchError(NULL);
}
if (ret != 0) {
break;
}
if (ts) {
GETTIMEOFDAY(&after); GETTIMEOFDAY(&after);
ts[i] = DIFF_MSEC(&after, &before); ts[i] = DIFF_MSEC(&after, &before);
} }