[git commit master] libunarchive: fix a bug where mode and time is no longer restored

Denys Vlasenko vda.linux at googlemail.com
Sat Aug 29 23:18:34 UTC 2009


commit: http://git.busybox.net/busybox/commit/?id=b9762922d1c5ab4022f35033c5efaa013dd2fdbf
branch: http://git.busybox.net/busybox/commit/?id=refs/heads/master

Introduced by me in 1.15.x. Found by Rob Landley.

Signed-off-by: Denys Vlasenko <vda.linux at googlemail.com>
---
 archival/libunarchive/data_extract_all.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/archival/libunarchive/data_extract_all.c b/archival/libunarchive/data_extract_all.c
index 123d1de..d79ef7c 100644
--- a/archival/libunarchive/data_extract_all.c
+++ b/archival/libunarchive/data_extract_all.c
@@ -132,7 +132,7 @@ void FAST_FUNC data_extract_all(archive_handle_t *archive_handle)
 #endif
 			lchown(file_header->name, file_header->uid, file_header->gid);
 	}
-	if (S_ISLNK(file_header->mode)) {
+	if (!S_ISLNK(file_header->mode)) {
 		/* uclibc has no lchmod, glibc is even stranger -
 		 * it has lchmod which seems to do nothing!
 		 * so we use chmod... */
-- 
1.6.3.3



More information about the busybox-cvs mailing list