summaryrefslogtreecommitdiff
path: root/archival/libarchive/data_extract_to_command.c
diff options
context:
space:
mode:
authorDenys Vlasenko2011-03-08 21:00:36 +0100
committerDenys Vlasenko2011-03-08 21:00:36 +0100
commit681efe20d327e9e6774b174a617d66bbb9d21f48 (patch)
tree4331e443ee303c24364b1655651c8584db8b51c1 /archival/libarchive/data_extract_to_command.c
parent86cf0364bd58e07646a23a1128e4a9ea79189579 (diff)
downloadbusybox-681efe20d327e9e6774b174a617d66bbb9d21f48.zip
busybox-681efe20d327e9e6774b174a617d66bbb9d21f48.tar.gz
use user's shell instead of hardwired "/bin/sh" (android needs this)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
Diffstat (limited to 'archival/libarchive/data_extract_to_command.c')
-rw-r--r--archival/libarchive/data_extract_to_command.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/archival/libarchive/data_extract_to_command.c b/archival/libarchive/data_extract_to_command.c
index 2bbab76..0e97704 100644
--- a/archival/libarchive/data_extract_to_command.c
+++ b/archival/libarchive/data_extract_to_command.c
@@ -99,8 +99,12 @@ void FAST_FUNC data_extract_to_command(archive_handle_t *archive_handle)
close(p[1]);
xdup2(p[0], STDIN_FILENO);
signal(SIGPIPE, SIG_DFL);
- execl(DEFAULT_SHELL, DEFAULT_SHELL_SHORT_NAME, "-c", archive_handle->tar__to_command, NULL);
- bb_perror_msg_and_die("can't execute '%s'", DEFAULT_SHELL);
+ execl(archive_handle->tar__to_command_shell,
+ archive_handle->tar__to_command_shell,
+ "-c",
+ archive_handle->tar__to_command,
+ NULL);
+ bb_perror_msg_and_die("can't execute '%s'", archive_handle->tar__to_command_shell);
}
close(p[0]);
/* Our caller is expected to do signal(SIGPIPE, SIG_IGN)