提交 bd6708a8 编写于 作者: J Ján Tomko

testutils: find perl early

Commit 843a70a8 changed test-wrap-argv.pl to use
/usr/bin/env perl
instead of
/usr/bin/perl

However when called from qemuxml2argvtest with
VIR_TEST_REGENERATE_OUTPUT, PATH is set to '/bin'.

Find the path to perl early in virTestMain, in case we
are going to need it later after we've overridden PATH.
上级 45ff2362
...@@ -83,6 +83,7 @@ static size_t testCounter; ...@@ -83,6 +83,7 @@ static size_t testCounter;
static virBitmapPtr testBitmap; static virBitmapPtr testBitmap;
char *progname; char *progname;
static char *perl;
bool virTestOOMActive(void) bool virTestOOMActive(void)
{ {
...@@ -441,10 +442,15 @@ virTestRewrapFile(const char *filename) ...@@ -441,10 +442,15 @@ virTestRewrapFile(const char *filename)
char *script = NULL; char *script = NULL;
virCommandPtr cmd = NULL; virCommandPtr cmd = NULL;
if (!perl) {
fprintf(stderr, "cannot rewrap %s: unable to find perl in path", filename);
return -1;
}
if (virAsprintf(&script, "%s/test-wrap-argv.pl", abs_srcdir) < 0) if (virAsprintf(&script, "%s/test-wrap-argv.pl", abs_srcdir) < 0)
goto cleanup; goto cleanup;
cmd = virCommandNewArgList(script, "--in-place", filename, NULL); cmd = virCommandNewArgList(perl, script, "--in-place", filename, NULL);
if (virCommandRun(cmd, NULL) < 0) if (virCommandRun(cmd, NULL) < 0)
goto cleanup; goto cleanup;
...@@ -966,6 +972,9 @@ int virTestMain(int argc, ...@@ -966,6 +972,9 @@ int virTestMain(int argc,
} }
#endif /* TEST_OOM */ #endif /* TEST_OOM */
/* Find perl early because some tests override PATH */
perl = virFindFileInPath("perl");
ret = (func)(); ret = (func)();
virResetLastError(); virResetLastError();
...@@ -974,6 +983,7 @@ int virTestMain(int argc, ...@@ -974,6 +983,7 @@ int virTestMain(int argc,
fprintf(stderr, "%*s", 40 - (int)(testCounter % 40), ""); fprintf(stderr, "%*s", 40 - (int)(testCounter % 40), "");
fprintf(stderr, " %-3zu %s\n", testCounter, ret == 0 ? "OK" : "FAIL"); fprintf(stderr, " %-3zu %s\n", testCounter, ret == 0 ? "OK" : "FAIL");
} }
VIR_FREE(perl);
return ret; return ret;
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册