Skip to content

Commit abba353

Browse files
sunshinecogitster
authored andcommitted
blame: reject empty ranges -LX,+0 and -LX,-0
Empty ranges -LX,+0 and -LX,-0 are nonsensical in the context of blame yet they are accepted (in fact, both are interpreted as -LX,+2). Report them as invalid. Signed-off-by: Eric Sunshine <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent dedb912 commit abba353

File tree

2 files changed

+4
-2
lines changed

2 files changed

+4
-2
lines changed

line-range.c

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,8 @@ static const char *parse_loc(const char *spec, nth_line_fn_t nth_line,
2626
if (term != spec + 1) {
2727
if (!ret)
2828
return term;
29+
if (num == 0)
30+
die("-L invalid empty range");
2931
if (spec[0] == '-')
3032
num = 0 - num;
3133
if (0 < num)

t/annotate-tests.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ test_expect_success 'blame -L Y,X (undocumented)' '
185185
check_count -L6,3 B 1 B1 1 B2 1 D 1
186186
'
187187

188-
test_expect_failure 'blame -L X,+0' '
188+
test_expect_success 'blame -L X,+0' '
189189
test_must_fail $PROG -L1,+0 file
190190
'
191191

@@ -197,7 +197,7 @@ test_expect_success 'blame -L X,+N' '
197197
check_count -L3,+4 B 1 B1 1 B2 1 D 1
198198
'
199199

200-
test_expect_failure 'blame -L X,-0' '
200+
test_expect_success 'blame -L X,-0' '
201201
test_must_fail $PROG -L1,-0 file
202202
'
203203

0 commit comments

Comments
 (0)