git-quiltimport: preserve standard input to be able to read user input

When run without --author and it fails to determine an author, git
quiltimport tries `read patch_author` to get user input, but standard
input has been redirected to the patch series file.  This commit lets
quiltimport read the series file through file descriptor 3 so that the
standard input is preserved.

Reported by Uwe Kleine-König through http://bugs.debian.org/515910

Signed-off-by: Gerrit Pape <pape@smarden.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
Gerrit Pape 2009-02-24 09:00:06 +00:00 committed by Junio C Hamano
parent 6a0861a8a3
commit 6ab149ea89

View File

@ -63,7 +63,7 @@ tmp_info="$tmp_dir/info"
commit=$(git rev-parse HEAD) commit=$(git rev-parse HEAD)
mkdir $tmp_dir || exit 2 mkdir $tmp_dir || exit 2
while read patch_name level garbage while read patch_name level garbage <&3
do do
case "$patch_name" in ''|'#'*) continue;; esac case "$patch_name" in ''|'#'*) continue;; esac
case "$level" in case "$level" in
@ -134,5 +134,5 @@ do
commit=$( (echo "$SUBJECT"; echo; cat "$tmp_msg") | git commit-tree $tree -p $commit) && commit=$( (echo "$SUBJECT"; echo; cat "$tmp_msg") | git commit-tree $tree -p $commit) &&
git update-ref -m "quiltimport: $patch_name" HEAD $commit || exit 4 git update-ref -m "quiltimport: $patch_name" HEAD $commit || exit 4
fi fi
done <"$QUILT_PATCHES/series" done 3<"$QUILT_PATCHES/series"
rm -rf $tmp_dir || exit 5 rm -rf $tmp_dir || exit 5