[PATCH] filter-branch: use $(($i+1)) instead of $((i+1))
- From
Johannes Schindelin <johannes.schindelin@gmx.de>
- Date
- Jun 6, 2007, 15:24 UTC
- Message-ID
- <Pine.LNX.4.64.0706061620540.4046@racer.site>
- In-Reply-To
- <20070605103421.GB16160@diku.dk>
The expression $((i+1)) is not portable at all: even some bash versions do not grok it. So do not use it.
Noticed by Jonas Fonseca.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> ---
On Tue, 5 Jun 2007, Jonas Fonseca wrote: > Junio C Hamano <gitster@pobox.com> wrote Tue, Jun 05, 2007: > > Jonas Fonseca <fonseca@diku.dk> writes: > > > > > $ git filter-branch H2 > > > /home/fonseca/bin/git-filter-branch: 386: arith: syntax error: "i+1" > > > $ > > > > > > A possible fix that makes the test pass for me. > > > > [...] > > > > The portable ones we already have in the code say things like: > > > > msgnum=$(($msgnum+1)) > > Yes, I should have investigated before sending. > > > The one in filter-branch that bit you does not dereference 'i'. > > I am reasonably sure if you fix it to read: > > > > i=$(( $i+1 )) > > > > dash would grok it. > > This works here. Even without the spaces.
Voila.
git-filter-branch.sh | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/git-filter-branch.sh b/git-filter-branch.sh index 6807782..f89cfe1 100644 --- a/git-filter-branch.sh +++ b/git-filter-branch.sh @@ -334,7 +334,7 @@ test $commits -eq 0 && die "Found nothing to rewrite" i=0 while read commit; do - i=$((i+1)) + i=$(($i+1)) printf "$commit ($i/$commits) " git-read-tree -i -m $commit
-- 1.5.2.1.2656.g1921f