From: Bin Meng <bin.meng@windriver.com>
This case was written to use hardcoded /tmp directory for temporary
files. Update to use g_dir_make_tmp() for a portable implementation.
Signed-off-by: Bin Meng <bin.meng@windriver.com>
---
Changes in v3:
- Split to a separate patch
tests/qtest/qmp-test.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tests/qtest/qmp-test.c b/tests/qtest/qmp-test.c
index bf7304c7dc..0fa00c12dc 100644
--- a/tests/qtest/qmp-test.c
+++ b/tests/qtest/qmp-test.c
@@ -161,12 +161,13 @@ static void test_qmp_protocol(void)
/* Out-of-band tests */
-char tmpdir[] = "/tmp/qmp-test-XXXXXX";
+char *tmpdir;
char *fifo_name;
static void setup_blocking_cmd(void)
{
- if (!g_mkdtemp(tmpdir)) {
+ tmpdir = g_dir_make_tmp("qmp-test-XXXXXX", NULL);
+ if (!tmpdir) {
g_error("g_mkdtemp: %s", strerror(errno));
}
Again, errno usage is not correct for glib, using GError.
I would replace with g_assert_no_error(err) here too
fifo_name = g_strdup_printf("%s/fifo", tmpdir);
@@ -179,6 +180,7 @@ static void cleanup_blocking_cmd(void)
{
unlink(fifo_name);
rmdir(tmpdir);
+ g_free(tmpdir);
}
static void send_cmd_that_blocks(QTestState *s, const char *id)
--
2.34.1