diff options
author | bug1 <bug1@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2002-11-15 08:48:47 +0000 |
---|---|---|
committer | bug1 <bug1@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2002-11-15 08:48:47 +0000 |
commit | b0df52b575c63b580938ae5f7968b505ff53c80b (patch) | |
tree | 584f866aeba6b4949e6ea680f1dbb0a5775ddf7f /archival | |
parent | a25b00e9866af83c75aa2baa8372af19ad263da0 (diff) | |
download | busybox-w32-b0df52b575c63b580938ae5f7968b505ff53c80b.tar.gz busybox-w32-b0df52b575c63b580938ae5f7968b505ff53c80b.tar.bz2 busybox-w32-b0df52b575c63b580938ae5f7968b505ff53c80b.zip |
Dont chdir untill after we open the archive
git-svn-id: svn://busybox.net/trunk/busybox@5931 69ca8d6d-28ef-0310-b511-8ec308f3f277
Diffstat (limited to 'archival')
-rw-r--r-- | archival/tar.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/archival/tar.c b/archival/tar.c index f9711f8df..cadab32ca 100644 --- a/archival/tar.c +++ b/archival/tar.c | |||
@@ -710,10 +710,6 @@ int tar_main(int argc, char **argv) | |||
710 | tar_handle->filter = filter_accept_reject_list; | 710 | tar_handle->filter = filter_accept_reject_list; |
711 | } | 711 | } |
712 | 712 | ||
713 | if ((base_dir) && (chdir(base_dir))) { | ||
714 | perror_msg_and_die("Couldnt chdir"); | ||
715 | } | ||
716 | |||
717 | #ifdef CONFIG_FEATURE_TAR_CREATE | 713 | #ifdef CONFIG_FEATURE_TAR_CREATE |
718 | /* create an archive */ | 714 | /* create an archive */ |
719 | if (tar_create == TRUE) { | 715 | if (tar_create == TRUE) { |
@@ -740,6 +736,11 @@ int tar_main(int argc, char **argv) | |||
740 | } else { | 736 | } else { |
741 | tar_handle->src_fd = xopen(tar_filename, O_RDONLY); | 737 | tar_handle->src_fd = xopen(tar_filename, O_RDONLY); |
742 | } | 738 | } |
739 | |||
740 | if ((base_dir) && (chdir(base_dir))) { | ||
741 | perror_msg_and_die("Couldnt chdir"); | ||
742 | } | ||
743 | |||
743 | while (get_header_ptr(tar_handle) == EXIT_SUCCESS); | 744 | while (get_header_ptr(tar_handle) == EXIT_SUCCESS); |
744 | 745 | ||
745 | /* Ckeck that every file that should have been extracted was */ | 746 | /* Ckeck that every file that should have been extracted was */ |