summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJean Delvare <jdelvare@suse.de>2012-02-17 21:15:52 +0100
committerJean Delvare <jdelvare@suse.de>2012-02-17 21:15:52 +0100
commit07a1ee5d0bcd6ac3f860b3cf6c56515a7aa81d63 (patch)
tree896cf81972d2c854154c91320962c2d9c48179e1
parent8f3538a339030f47a32d94c0bd505575139cfc08 (diff)
downloadquilt-07a1ee5d0bcd6ac3f860b3cf6c56515a7aa81d63.tar.gz
setup, scripts/inspect: Properly escape spaces in directory and archive names
This fixes bug #25579.
-rw-r--r--quilt.changes6
-rw-r--r--quilt/scripts/inspect.in2
-rw-r--r--quilt/setup.in14
3 files changed, 18 insertions, 4 deletions
diff --git a/quilt.changes b/quilt.changes
index 3c034d8..035194a 100644
--- a/quilt.changes
+++ b/quilt.changes
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Fri Feb 17 21:14:20 CET 2012 - jdelvare@suse.de
+
+- setup, scripts/inspect: Properly escape spaces in directory and
+ archive names (bug #25579).
+
+-------------------------------------------------------------------
Wed Feb 1 21:12:11 CET 2012 - jdelvare@suse.de
- Makefile.in: Let "make clean" delete generated source tarballs.
diff --git a/quilt/scripts/inspect.in b/quilt/scripts/inspect.in
index dea5bac..7bc4ad5 100644
--- a/quilt/scripts/inspect.in
+++ b/quilt/scripts/inspect.in
@@ -291,6 +291,7 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
fi
dir=${dir/$RPM_BUILD_DIR}
dir=${dir##/}
+ dir=${dir// /\\ }
echo "${0##*/} ${dir:-.} $unpackfile" \
$(strip_option "$@") $(reverse_option "$@") >&3
;;
@@ -305,6 +306,7 @@ cat <<-'EOF' > $tmpdir/bin/wrapper
fi
dir=${dir/$RPM_BUILD_DIR}
dir=${dir##/}
+ dir=${dir// /\\ }
echo "${0##*/} ${dir:-.} $unpackfile" >&3
;;
esac
diff --git a/quilt/setup.in b/quilt/setup.in
index acd4ea2..90a8c85 100644
--- a/quilt/setup.in
+++ b/quilt/setup.in
@@ -161,13 +161,19 @@ case "$1" in
case "$@" in
"# Sourcedir: "*)
shift 2
- tar_dir="$@" ;;
+ tar_dir="$@"
+ tar_dir=${tar_dir// /\\ }
+ ;;
"# Source: "*)
shift 2
- echo "tar ${tar_dir:-.} $@" ;;
+ source="$@"
+ echo "tar ${tar_dir:-.} ${source// /\\ }"
+ ;;
"# Patchdir: "*)
shift 2
- patch_dir="$@" ;;
+ patch_dir="$@"
+ patch_dir=${patch_dir// /\\ }
+ ;;
''|'#'*)
;;
*)
@@ -184,7 +190,7 @@ do
case "$tag" in
tar)
tarball=$sourcedir$arg1
- if [ ! -e $tarball ]
+ if [ ! -e "$tarball" ]
then
printf $"File %s not found\n" "$tarball" >&2
exit 1