diff options
| author | ruki <[email protected]> | 2021-08-29 21:58:47 +0800 |
|---|---|---|
| committer | ruki <[email protected]> | 2021-08-29 21:58:47 +0800 |
| commit | b84cce50faefa8b327b4d4a62d010bdb25abd491 (patch) | |
| tree | 803afc94572534cd981c4309ce7860aba641e6df /xmake/modules/utils/archive/extract.lua | |
| parent | ab2c5e2a3b29bb63b23a7fa59c3f6d56cc56c47c (diff) | |
improve extract
Diffstat (limited to 'xmake/modules/utils/archive/extract.lua')
| -rw-r--r-- | xmake/modules/utils/archive/extract.lua | 28 |
1 files changed, 4 insertions, 24 deletions
diff --git a/xmake/modules/utils/archive/extract.lua b/xmake/modules/utils/archive/extract.lua index dd09df9ac..69616fea6 100644 --- a/xmake/modules/utils/archive/extract.lua +++ b/xmake/modules/utils/archive/extract.lua @@ -85,9 +85,7 @@ function _extract_using_tar(archivefile, outputdir, extension, opt) -- extract it if is_host("windows") then - local oldir = os.cd(outputdir) - os.vrunv(program, argv) - os.cd(oldir) + os.vrunv(program, argv, {curdir = outputdir}) else os.vrunv(program, argv) end @@ -201,14 +199,8 @@ function _extract_using_gzip(archivefile, outputdir, extension, opt) os.cp(archivefile, tmpfile) end - -- enter outputdir - local oldir = os.cd(outputdir) - -- extract it - os.vrunv(program, argv) - - -- leave outputdir - os.cd(oldir) + os.vrunv(program, argv, {curdir = outputdir}) -- continue to extract *.tar file if outputdir_old then @@ -256,14 +248,8 @@ function _extract_using_xz(archivefile, outputdir, extension, opt) os.cp(archivefile, tmpfile) end - -- enter outputdir - local oldir = os.cd(outputdir) - -- extract it - os.vrunv(program, argv) - - -- leave outputdir - os.cd(oldir) + os.vrunv(program, argv, {curdir = outputdir}) -- continue to extract *.tar file if outputdir_old then @@ -369,14 +355,8 @@ function _extract_using_bzip2(archivefile, outputdir, extension, opt) os.cp(archivefile, tmpfile) end - -- enter outputdir - local oldir = os.cd(outputdir) - -- extract it - os.vrunv(program, argv) - - -- leave outputdir - os.cd(oldir) + os.vrunv(program, argv, {curdir = outputdir}) -- continue to extract *.tar file if outputdir_old then |
