summaryrefslogtreecommitdiff
path: root/archival
diff options
context:
space:
mode:
authorDenys Vlasenko2009-11-24 01:16:12 +0100
committerDenys Vlasenko2009-11-24 01:16:12 +0100
commit6ccaa23f2be25b3e1ff4c6f5f9bef69a4cb36f8c (patch)
tree205ed7d89c8427d1fb5b80767ac05723196fafdd /archival
parent8d580c72f4eaf5bb6cfec21ef473723c74c3382d (diff)
downloadbusybox-6ccaa23f2be25b3e1ff4c6f5f9bef69a4cb36f8c.zip
busybox-6ccaa23f2be25b3e1ff4c6f5f9bef69a4cb36f8c.tar.gz
libunarchive: fix reversed test for older/newer
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival')
-rw-r--r--archival/libunarchive/data_extract_all.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/archival/libunarchive/data_extract_all.c b/archival/libunarchive/data_extract_all.c
index 294024b..2fcddc4 100644
--- a/archival/libunarchive/data_extract_all.c
+++ b/archival/libunarchive/data_extract_all.c
@@ -30,13 +30,13 @@ void FAST_FUNC data_extract_all(archive_handle_t *archive_handle)
}
else if (archive_handle->ah_flags & ARCHIVE_EXTRACT_NEWER) {
/* Remove the existing entry if its older than the extracted entry */
- struct stat statbuf;
- if (lstat(file_header->name, &statbuf) == -1) {
+ struct stat existing_sb;
+ if (lstat(file_header->name, &existing_sb) == -1) {
if (errno != ENOENT) {
bb_perror_msg_and_die("can't stat old file");
}
}
- else if (statbuf.st_mtime <= file_header->mtime) {
+ else if (existing_sb.st_mtime >= file_header->mtime) {
if (!(archive_handle->ah_flags & ARCHIVE_EXTRACT_QUIET)) {
bb_error_msg("%s not created: newer or "
"same age file exists", file_header->name);