From ccd5d657bf0550c269c2c3da4925c81fd71e420c Mon Sep 17 00:00:00 2001 From: Teddy Wing Date: Mon, 17 Jun 2019 20:23:28 +0200 Subject: code-review-difftool: Retain old `extglob` setting If `extglob` was set, we'd always unset it. Check to see if it's set before doing anything with it, and then restore it to its original value. --- code-review-difftool | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/code-review-difftool b/code-review-difftool index 247586e..10ff89d 100755 --- a/code-review-difftool +++ b/code-review-difftool @@ -24,8 +24,15 @@ source "$SCRIPT/code-review-database" review_base="$(get_merge_base)" # Remove dot ranges at the end of a revision as Fugitive doesn't support them. -shopt -s extglob +shopt -p extglob +has_extglob=$? + +if [ $has_extglob -ne 0 ]; then + shopt -s extglob +fi review_base_without_dots="${review_base%%?(..|...)}" -shopt -u extglob +if [ $has_extglob -ne 0 ]; then + shopt -u extglob +fi vim -c "tabdo Gdiff $review_base_without_dots" -p $(code-review changed-files) -- cgit v1.2.3