From 23d3c67c9a1ccc74f4e0359b06d56db3c1a65861 Mon Sep 17 00:00:00 2001 From: Daniel Stone Date: Thu, 10 Nov 2016 11:14:03 +0000 Subject: [PATCH] tests: Use unique XDG_RUNTIME_DIR Rather than using a hardcoded 'wayland-tests' directory under the existing XDG_RUNTIME_DIR to use as the new runtime dir, use mkdtemp to guarantee uniqueness. This fixes make -jN check, as well as just happening to run 'make check' twice from the same session. Signed-off-by: Daniel Stone Reported-by: Pekka Paalanen Reviewed-by: Pekka Paalanen Tested-by: Pekka Paalanen --- tests/test-runner.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/test-runner.c b/tests/test-runner.c index 4aa6667..82a0a7b 100644 --- a/tests/test-runner.c +++ b/tests/test-runner.c @@ -226,10 +226,11 @@ set_xdg_runtime_dir(void) xrd_env = getenv("XDG_RUNTIME_DIR"); /* if XDG_RUNTIME_DIR is not set in environ, fallback to /tmp */ - assert((snprintf(xdg_runtime_dir, PATH_MAX, "%s/wayland-tests", + assert((snprintf(xdg_runtime_dir, PATH_MAX, "%s/wayland-tests-XXXXXX", xrd_env ? xrd_env : "/tmp") < PATH_MAX) && "test error: XDG_RUNTIME_DIR too long"); + assert(mkdtemp(xdg_runtime_dir) && "test error: mkdtemp failed"); if (mkdir(xdg_runtime_dir, 0700) == -1) if (errno != EEXIST) { perror("Creating XDG_RUNTIME_DIR"); -- 2.7.4