aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--THANKS1
-rw-r--r--src/xz/file_io.c14
2 files changed, 13 insertions, 2 deletions
diff --git a/THANKS b/THANKS
index 0d8f7bd9..239daf47 100644
--- a/THANKS
+++ b/THANKS
@@ -34,6 +34,7 @@ has been important. :-) In alphabetical order:
- Igor Pavlov
- Elbert Pol
- Mikko Pouru
+ - Robert Readman
- Bernhard Reutner-Fischer
- Christian von Roques
- Jukka Salmi
diff --git a/src/xz/file_io.c b/src/xz/file_io.c
index a07501c1..4a960e83 100644
--- a/src/xz/file_io.c
+++ b/src/xz/file_io.c
@@ -112,8 +112,18 @@ io_unlink(const char *name, const struct stat *known_st)
|| new_st.st_ino != known_st->st_ino
# endif
)
- message_error(_("%s: File seems to be moved, not removing"),
- name);
+ // TRANSLATORS: When compression or decompression finishes,
+ // and xz is going to remove the source file, xz first checks
+ // if the source file still exists, and if it does, does its
+ // device and inode numbers match what xz saw when it opened
+ // the source file. If these checks fail, this message is
+ // shown, %s being the filename, and the file is not deleted.
+ // The check for device and inode numbers is there, because
+ // it is possible that the user has put a new file in place
+ // of the original file, and in that case it obviously
+ // shouldn't be removed.
+ message_error(_("%s: File seems to have been moved, "
+ "not removing"), name);
else
#endif
// There's a race condition between lstat() and unlink()