Skip to content
Snippets Groups Projects
Commit 70fed324 authored by Simon McVittie's avatar Simon McVittie
Browse files

resolve-in-sysroot: Correct misleading error messages


At this point, current_path is everything up to but not including fd.
For example, if we are traversing "x/y/z/w" with current_path = "x/y",
then the fds array contains { x, y } and fd is the result of opening z.
We're looking at the result of calling fstatat() on z, so we need to
see "x/y/z" in the error messages, for example if z is a regular file
(therefore "x/y/z/w" cannot possibly exist).

Signed-off-by: default avatarSimon McVittie <smcv@collabora.com>
parent 155430ce
No related branches found
No related tags found
1 merge request!313Fix listing overrides in system-info with recent pressure-vessel
...@@ -281,17 +281,17 @@ _srt_resolve_in_sysroot (int sysroot, ...@@ -281,17 +281,17 @@ _srt_resolve_in_sysroot (int sysroot,
if (!glnx_fstatat (fd, "", &stat_buf, AT_EMPTY_PATH, error)) if (!glnx_fstatat (fd, "", &stat_buf, AT_EMPTY_PATH, error))
{ {
g_prefix_error (error, g_prefix_error (error,
"Unable to determine whether \"%s\" " "Unable to determine whether \"%s/%s\" "
"is a directory", "is a directory",
current_path->str); current_path->str, next);
return -1; return -1;
} }
if (!S_ISDIR (stat_buf.st_mode)) if (!S_ISDIR (stat_buf.st_mode))
{ {
g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY, g_set_error (error, G_IO_ERROR, G_IO_ERROR_NOT_DIRECTORY,
"\"%s\" is not a directory", "\"%s/%s\" is not a directory",
current_path->str); current_path->str, next);
} }
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment