aboutsummaryrefslogtreecommitdiff
path: root/paludis/repositories/e/ebuild
diff options
context:
space:
mode:
authorAvatar David Leverton <levertond@googlemail.com> 2015-10-31 16:12:03 +0000
committerAvatar David Leverton <levertond@googlemail.com> 2015-11-05 17:37:26 +0000
commitc9bc47089a68beb4ffefb097bf1f15495e4c8ae2 (patch)
treea32b45a918aa2c1a97aee66bd5424a8e57850718 /paludis/repositories/e/ebuild
parentea0ee08da746e4d924031bafca3e96e60b7599bd (diff)
downloadpaludis-c9bc47089a68beb4ffefb097bf1f15495e4c8ae2.tar.gz
paludis-c9bc47089a68beb4ffefb097bf1f15495e4c8ae2.tar.xz
EAPI 6 unpack has saner path handling
Diffstat (limited to 'paludis/repositories/e/ebuild')
-rwxr-xr-xpaludis/repositories/e/ebuild/utils/unpack10
1 files changed, 9 insertions, 1 deletions
diff --git a/paludis/repositories/e/ebuild/utils/unpack b/paludis/repositories/e/ebuild/utils/unpack
index 9f01d6ee5..3025685f9 100755
--- a/paludis/repositories/e/ebuild/utils/unpack
+++ b/paludis/repositories/e/ebuild/utils/unpack
@@ -169,7 +169,15 @@ done
for x in "$@" ; do
x=$(echo $x )
echo ">>> Unpacking ${x} to ${UNPACKTODIR}"
- [[ "${x:0:2}" == "./" ]] || x="${UNPACKFROMDIR}/${x}"
+ if [[ ${x} != */* ]]; then
+ x=${UNPACKFROMDIR}/${x}
+ elif [[ ${x:0:2} == ./* ]]; then
+ :
+ elif [[ -n ${PALUDIS_UNPACK_ANY_PATH} ]]; then
+ :
+ else
+ die "Invalid path given to unpack: ${x}"
+ fi
mkdir -p ${UNPACKTODIR}
cd ${UNPACKTODIR}
unpack_one "${x}"