blame: fix indent of line numbers
Correct the calculation of the number of digits for line counts of the form 10^n-1 (9, 99, ...) in lineno_width(). This makes blame stop printing an extra space before the line numbers of files with that many total lines. Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
4a2284b999
commit
00fb3d214c
@ -1772,7 +1772,7 @@ static int lineno_width(int lines)
|
|||||||
{
|
{
|
||||||
int i, width;
|
int i, width;
|
||||||
|
|
||||||
for (width = 1, i = 10; i <= lines + 1; width++)
|
for (width = 1, i = 10; i <= lines; width++)
|
||||||
i *= 10;
|
i *= 10;
|
||||||
return width;
|
return width;
|
||||||
}
|
}
|
||||||
|
@ -11,7 +11,15 @@ test_expect_success setup '
|
|||||||
echo B B B B B >two &&
|
echo B B B B B >two &&
|
||||||
echo C C C C C >tres &&
|
echo C C C C C >tres &&
|
||||||
echo ABC >mouse &&
|
echo ABC >mouse &&
|
||||||
git add one two tres mouse &&
|
for i in 1 2 3 4 5 6 7 8 9
|
||||||
|
do
|
||||||
|
echo $i
|
||||||
|
done >nine_lines &&
|
||||||
|
for i in 1 2 3 4 5 6 7 8 9 a
|
||||||
|
do
|
||||||
|
echo $i
|
||||||
|
done >ten_lines &&
|
||||||
|
git add one two tres mouse nine_lines ten_lines &&
|
||||||
test_tick &&
|
test_tick &&
|
||||||
GIT_AUTHOR_NAME=Initial git commit -m Initial &&
|
GIT_AUTHOR_NAME=Initial git commit -m Initial &&
|
||||||
|
|
||||||
@ -167,4 +175,14 @@ test_expect_success 'blame -L with invalid end' '
|
|||||||
grep "has only 2 lines" errors
|
grep "has only 2 lines" errors
|
||||||
'
|
'
|
||||||
|
|
||||||
|
test_expect_success 'indent of line numbers, nine lines' '
|
||||||
|
git blame nine_lines >actual &&
|
||||||
|
test $(grep -c " " actual) = 0
|
||||||
|
'
|
||||||
|
|
||||||
|
test_expect_success 'indent of line numbers, ten lines' '
|
||||||
|
git blame ten_lines >actual &&
|
||||||
|
test $(grep -c " " actual) = 9
|
||||||
|
'
|
||||||
|
|
||||||
test_done
|
test_done
|
||||||
|
Loading…
Reference in New Issue
Block a user