Commit 5d57cac6 authored by Eric Sunshine's avatar Eric Sunshine Committed by Junio C Hamano

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's avatarEric Sunshine <sunshine@sunshineco.com>
Signed-off-by: default avatarJunio C Hamano <gitster@pobox.com>
parent 82cd7e5d
......@@ -21,7 +21,7 @@ static const char *parse_loc(const char *spec, nth_line_fn_t nth_line,
* for 20 lines, or "-L <something>,-5" for 5 lines ending at
* <something>.
*/
if (1 < begin && (spec[0] == '+' || spec[0] == '-')) {
if (1 <= begin && (spec[0] == '+' || spec[0] == '-')) {
num = strtol(spec + 1, &term, 10);
if (term != spec + 1) {
if (!ret)
......
......@@ -185,7 +185,7 @@ test_expect_success 'blame -L Y,X (undocumented)' '
check_count -L6,3 B 1 B1 1 B2 1 D 1
'
test_expect_failure 'blame -L ,+0' '
test_expect_success 'blame -L ,+0' '
test_must_fail $PROG -L,+0 file
'
......@@ -201,7 +201,7 @@ test_expect_success 'blame -L X,+N' '
check_count -L3,+4 B 1 B1 1 B2 1 D 1
'
test_expect_failure 'blame -L ,-0' '
test_expect_success 'blame -L ,-0' '
test_must_fail $PROG -L,-0 file
'
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment