Do not overwrite symlinks on extract tars

This commit is contained in:
zorn-v 2023-03-04 00:37:23 +10:00 committed by GitHub
parent 60d8ac4b7b
commit 16fac7c19b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -196,29 +196,29 @@ unpack_tar_zst () {
set -o pipefail set -o pipefail
unset PW_ZSTD_PORT unset PW_ZSTD_PORT
if [[ `which zstd` ]] &>/dev/null ; then if [[ `which zstd` ]] &>/dev/null ; then
tar -I zstd -xvf "$1" -C "$2" | sszen tar -I zstd -xhvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
else else
env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${PW_WINELIB}/portable/lib/lib64:${PW_WINELIB}/portable/lib/lib" tar -I "${PW_WINELIB}/portable/bin/zstd" -xvf "$1" -C "$2" | sszen env LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${PW_WINELIB}/portable/lib/lib64:${PW_WINELIB}/portable/lib/lib" tar -I "${PW_WINELIB}/portable/bin/zstd" -xhvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
fi fi
} }
unpack_tar_xz () { unpack_tar_xz () {
set -o pipefail set -o pipefail
tar -Jxvf "$1" -C "$2" | sszen tar -Jxhvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
} }
unpack_tar_gz () { unpack_tar_gz () {
set -o pipefail set -o pipefail
tar -xzvf "$1" -C "$2" | sszen tar -xhzvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
} }
unpack_tar () { unpack_tar () {
set -o pipefail set -o pipefail
tar -xvf "$1" -C "$2" | sszen tar -xhvf "$1" -C "$2" | sszen
[ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0 [ "${PIPESTATUS[0]}" != 0 ] && print_error "File $1 unpacking error." && return 1 || return 0
} }