Revert https://github.com/jnovy/pxz/commit/fa3194ea0bf87ce377d5cec30fdcdb96db750896
as it actually makes pxz quite unusable, see https://github.com/jnovy/pxz/issues/34
diff --git a/pxz.c b/pxz.c
index 74c7eae..be07845 100644
--- a/pxz.c
+++ b/pxz.c
@@ -132,13 +132,13 @@ const struct option long_opts[] = {
{ NULL, 0, NULL, 0 }
};
-void __attribute__((noreturn)) run_xz( char **argv, char **envp ) {
- execve(XZ_BINARY, argv, envp);
+void __attribute__((noreturn)) run_xz( char **argv ) {
+ execvp(XZ_BINARY, argv);
error(0, errno, "execution of "XZ_BINARY" binary failed");
exit(EXIT_FAILURE);
}
-void parse_args( int argc, char **argv, char **envp ) {
+void parse_args( int argc, char **argv ) {
int c;
opterr = 0;
@@ -184,11 +184,11 @@ void parse_args( int argc, char **argv, char **envp ) {
" -D, --context-size per-thread compression context size as a multiple\n"
" of dictionary size. Default is 3.\n\n"
"Usage and other options are same as in XZ:\n\n");
- run_xz(argv, envp);
+ run_xz(argv);
break;
case 'V':
printf("Parallel PXZ "PXZ_VERSION" (build "PXZ_BUILD_DATE")\n");
- run_xz(argv, envp);
+ run_xz(argv);
break;
case 'g':
opt_lzma_check = LZMA_CHECK_CRC32;
@@ -197,7 +197,7 @@ void parse_args( int argc, char **argv, char **envp ) {
case 't':
case 'l':
case '?':
- run_xz(argv, envp);
+ run_xz(argv);
default:
break;
}
@@ -246,7 +246,7 @@ int close_stream( FILE *f ) {
return 0;
}
-int main( int argc, char **argv, char **envp ) {
+int main( int argc, char **argv ) {
int i;
uint64_t p, threads, chunk_size;
uint8_t *m;
@@ -271,7 +271,7 @@ int main( int argc, char **argv, char **envp ) {
}
snprintf(xzcmd, xzcmd_max, XZ_BINARY);
- parse_args(argc, argv, envp);
+ parse_args(argc, argv);
lzma_lzma_preset(&lzma_options, opt_complevel);