From: Laine Stump Date: Mon, 19 Sep 2016 17:44:21 +0000 (-0400) Subject: tests: fix use of fixedcontent variable X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=4e2d642afb454738b2e06caffeb86d20b6f33a15;p=libvirt.git tests: fix use of fixedcontent variable Commit 8563560026d192c2cf047b550ffd468692245ed6 switched from hardcoded use of strcontent to hardcoded use of fixedcontent (fixedcontent is *sometimes* a copy of strcontent with a \n appended). This was a problem because sometimes fixedcontent is *not* a copy of strcontent, but is instead NULL, leading to the regenerated test case output being a 0 length file. This patch creates a new const char *cmpcontent initialized to strcontent, but changed to fixedcontent if/when fixedcontent is created, then always uses cmpcontent instead of (str|fixed)content. --- diff --git a/tests/testutils.c b/tests/testutils.c index f87628edee..c934785033 100644 --- a/tests/testutils.c +++ b/tests/testutils.c @@ -694,6 +694,7 @@ virTestCompareToFile(const char *strcontent, int ret = -1; char *filecontent = NULL; char *fixedcontent = NULL; + const char *cmpcontent = strcontent; if (virTestLoadFile(filename, &filecontent) < 0 && !virTestGetRegenerate()) goto failure; @@ -703,13 +704,13 @@ virTestCompareToFile(const char *strcontent, strcontent[strlen(strcontent) - 1] != '\n') { if (virAsprintf(&fixedcontent, "%s\n", strcontent) < 0) goto failure; + cmpcontent = fixedcontent; } - if (STRNEQ_NULLABLE(fixedcontent ? fixedcontent : strcontent, - filecontent)) { + if (STRNEQ_NULLABLE(cmpcontent, filecontent)) { virTestDifferenceFull(stderr, filecontent, filename, - fixedcontent, NULL); + cmpcontent, NULL); goto failure; }