]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
repart: prefix the correct path with root dir in log output
authorLennart Poettering <lennart@poettering.net>
Wed, 21 Apr 2021 21:21:21 +0000 (23:21 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 21 Apr 2021 21:30:00 +0000 (23:30 +0200)
When we copy files into the freshly formatted file system, the mount
point prefix must be prepended to the *target* path, not the *source*
path. Not just in code but in the log message about it, too.

src/partition/repart.c

index 3e88d382059c1729737aad7dc2747a0d619f8fb4..9e297f19b9a5667a8986f615324803599b697b34 100644 (file)
@@ -2846,7 +2846,7 @@ static int do_copy_files(Partition *p, const char *fs) {
                                                 UID_INVALID, GID_INVALID,
                                                 COPY_REFLINK|COPY_MERGE|COPY_REPLACE|COPY_SIGINT|COPY_HARDLINKS);
                         if (r < 0)
-                                return log_error_errno(r, "Failed to copy %s%s to %s: %m", strempty(arg_root), *source, *target);
+                                return log_error_errno(r, "Failed to copy '%s' to '%s%s': %m", *source, strempty(arg_root), *target);
                 } else {
                         /* We are looking at a regular file */
 
@@ -2864,7 +2864,7 @@ static int do_copy_files(Partition *p, const char *fs) {
 
                         r = copy_bytes(sfd, tfd, UINT64_MAX, COPY_REFLINK|COPY_SIGINT);
                         if (r < 0)
-                                return log_error_errno(r, "Failed to copy '%s%s' to '%s': %m", strempty(arg_root), *source, *target);
+                                return log_error_errno(r, "Failed to copy '%s' to '%s%s': %m", *source, strempty(arg_root), *target);
 
                         (void) copy_xattr(sfd, tfd);
                         (void) copy_access(sfd, tfd);