Skip to content

Commit 5d57cac

Browse files
sunshinecogitster
authored andcommitted
blame: reject empty ranges -L,+0 and -L,-0
Empty ranges -L,+0 and -L,-0 are nonsensical in the context of blame yet they are accepted (in fact, both are interpreted as -L1,Y where Y is end-of-file). Report them as invalid. Signed-off-by: Eric Sunshine <[email protected]> Signed-off-by: Junio C Hamano <[email protected]>
1 parent 82cd7e5 commit 5d57cac

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

line-range.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ static const char *parse_loc(const char *spec, nth_line_fn_t nth_line,
2121
* for 20 lines, or "-L <something>,-5" for 5 lines ending at
2222
* <something>.
2323
*/
24-
if (1 < begin && (spec[0] == '+' || spec[0] == '-')) {
24+
if (1 <= begin && (spec[0] == '+' || spec[0] == '-')) {
2525
num = strtol(spec + 1, &term, 10);
2626
if (term != spec + 1) {
2727
if (!ret)

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 ,+0' '
188+
test_expect_success 'blame -L ,+0' '
189189
test_must_fail $PROG -L,+0 file
190190
'
191191

@@ -201,7 +201,7 @@ test_expect_success 'blame -L X,+N' '
201201
check_count -L3,+4 B 1 B1 1 B2 1 D 1
202202
'
203203

204-
test_expect_failure 'blame -L ,-0' '
204+
test_expect_success 'blame -L ,-0' '
205205
test_must_fail $PROG -L,-0 file
206206
'
207207

0 commit comments

Comments
 (0)