ui/spice-app: detect runtime directory creation failures

spice_app_display_early_init() creates the per-VM runtime directory
with g_mkdir_with_parents() before setting up the Spice socket. The
code checks for "< -1", but g_mkdir_with_parents() returns -1 on
failure, so the error path is never taken.

This lets spice-app continue after a directory creation failure and
defers the problem to later setup steps.

Check for "< 0" instead so the failure is reported immediately and
spice-app exits before using an invalid runtime directory.

Fixes: d8aec9d9f1 ("display: add -display spice-app launching a Spice client")
Signed-off-by: GuoHan Zhao <zhaoguohan@kylinos.cn>
Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Message-ID: <20260408031725.641417-1-zhaoguohan@kylinos.cn>
(cherry picked from commit 52cf667ed2)
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
This commit is contained in:
GuoHan Zhao 2026-04-08 11:17:25 +08:00 committed by Michael Tokarev
parent c7d777379e
commit 0eeca728d7

View file

@ -153,7 +153,7 @@ static void spice_app_display_early_init(DisplayOptions *opts)
if (qemu_name) {
app_dir = g_build_filename(g_get_user_runtime_dir(),
"qemu", qemu_name, NULL);
if (g_mkdir_with_parents(app_dir, S_IRWXU) < -1) {
if (g_mkdir_with_parents(app_dir, S_IRWXU) < 0) {
error_report("Failed to create directory %s: %s",
app_dir, strerror(errno));
exit(1);