--- tests/commandtest.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/tests/commandtest.c b/tests/commandtest.c index 93c6333..3bfc358 100644 --- a/tests/commandtest.c +++ b/tests/commandtest.c @@ -680,7 +680,7 @@ static int test17(const void *unused ATTRIBUTE_UNUSED) goto cleanup; } - if (!outbuf || *outbuf) { + if (*outbuf) { puts("output buffer is not an allocated empty string"); goto cleanup; } @@ -702,7 +702,7 @@ static int test17(const void *unused ATTRIBUTE_UNUSED) goto cleanup; } - if (!outbuf || *outbuf || !errbuf || *errbuf) { + if (*outbuf || *errbuf) { puts("output buffers are not allocated empty strings"); goto cleanup; } @@ -936,6 +936,7 @@ mymain(void) int fd; virCommandTestDataPtr test = NULL; int timer = -1; + int virinitret; if (virThreadInitialize() < 0) return EXIT_FAILURE; @@ -963,16 +964,19 @@ mymain(void) dup2(fd, 6) < 0 || dup2(fd, 7) < 0 || dup2(fd, 8) < 0 || - (fd > 8 && VIR_CLOSE(fd) < 0)) + (fd > 8 && VIR_CLOSE(fd) < 0)) { + VIR_FORCE_CLOSE(fd); return EXIT_FAILURE; + } + sa_assert(fd == -1); /* Prime the debug/verbose settings from the env vars, * since we're about to reset 'environ' */ ignore_value(virTestGetDebug()); ignore_value(virTestGetVerbose()); - if (virInitialize() < 0) - return EXIT_FAILURE; + /* Make sure to not leak fd's */ + virinitret = virInitialize(); /* Phase two of killing interfering fds; see above. */ fd = 3; @@ -988,6 +992,9 @@ mymain(void) fd = 8; VIR_FORCE_CLOSE(fd); + if (virinitret < 0) + return EXIT_FAILURE; + virEventRegisterDefaultImpl(); if (VIR_ALLOC(test) < 0) { virReportOOMError(); -- 1.7.11.7 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list