Re: [PATCH] git-mergetool--lib.sh: make check_unchanged return 1 on invalid read
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Sep 19, 2011, 20:37 UTC
- Message-ID
- <7vaaa09skn.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <1316462592-27255-1-git-send-email-jaysoffian@gmail.com>
Jay Soffian <jaysoffian@gmail.com> writes:
Show 5 quoted lines
> Else when the user hits ctrl-c at the "Was the merge successful? > [y/n]" prompt, mergetool goes into an infinite loop asking > for input. > > Signed-off-by: Jay Soffian <jaysoffian@gmail.com>
We still seem to miss one "read" unchecked in resolve_symlink_merge(), even with this patch.
Show 17 quoted lines
> git-mergetool--lib.sh | 6 +++++-
> 1 files changed, 5 insertions(+), 1 deletions(-)
>
> diff --git a/git-mergetool--lib.sh b/git-mergetool--lib.sh
> index 8fc65d0400..0eb424484c 100644
> --- a/git-mergetool--lib.sh
> +++ b/git-mergetool--lib.sh
> @@ -21,7 +21,11 @@ check_unchanged () {
> do
> echo "$MERGED seems unchanged."
> printf "Was the merge successful? [y/n] "
> - read answer
> + if ! read answer
> + then
> + status=1
> + break
> + fiI suspect that it would be more consistent with 6b44577 (mergetool: check return value from read, 2011-07-01), which this patch is a follow-up to, to do:
read answer || return 1
here.
Thanks.