[Buildroot] [git commit] download/git: fix transform-name

Peter Korsgaard peter at korsgaard.com
Sun Apr 8 15:40:16 UTC 2018


commit: https://git.buildroot.net/buildroot/commit/?id=54785851eeb775720aac8a0b6b423fda26ac8f27
branch: https://git.buildroot.net/buildroot/commit/?id=refs/heads/master

When a package contains a relative symlink which first component is '..'
(thus pointing one directory higher), for example package 'meh' contains
this symlink:

    foo/bar -> ../buz

then it would be stored as 'meh-version./buz' because of the
transform-name pattern replacement.

Fix it to only match the leading './'.

Reported-by: Ricardo Martincoski <ricardo.martincoski at gmail.com>
Signed-off-by: "Yann E. MORIN" <yann.morin.1998 at free.fr>
Cc: Ricardo Martincoski <ricardo.martincoski at gmail.com>
Cc: Peter Korsgaard <peter at korsgaard.com>
Cc: Maxime Hadjinlian <maxime.hadjinlian at gmail.com>
Reviewed-by: Ricardo Martincoski <ricardo.martincoski at gmail.com>
Tested-by: Ricardo Martincoski <ricardo.martincoski at gmail.com>
Signed-off-by: Peter Korsgaard <peter at korsgaard.com>
---
 support/download/git | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/support/download/git b/support/download/git
index f07195b0d1..787b6bcca0 100755
--- a/support/download/git
+++ b/support/download/git
@@ -111,7 +111,7 @@ LC_ALL=C sort <"${output}.list" >"${output}.list.sorted"
 
 # Create GNU-format tarballs, since that's the format of the tarballs on
 # sources.buildroot.org and used in the *.hash files
-tar cf - --transform="s/^\./${basename}/" \
+tar cf - --transform="s/^\.\//${basename}\//" \
 	--numeric-owner --owner=0 --group=0 --mtime="${date}" --format=gnu \
          -T "${output}.list.sorted" >"${output}.tar"
 gzip -6 -n <"${output}.tar" >"${output}"


More information about the buildroot mailing list