From 9d8d37957f8a568af1d3f2c4a61e49b3f4546f11 Mon Sep 17 00:00:00 2001 From: Wilfred Hughes Date: Sun, 14 Nov 2021 22:23:51 -0800 Subject: [PATCH] Use the max opposite line when computing after context Previously we'd use the maximum line of the current side, leading us to try to access nonexistent line numbers. This occurred when diffing old/new.jsx from sample_files/. --- src/context.rs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/context.rs b/src/context.rs index c71c17218..a409fb4ec 100644 --- a/src/context.rs +++ b/src/context.rs @@ -142,7 +142,7 @@ fn after_with_opposites( after_lines: &[LineNumber], opposite_lines: HashMap>, prev_max_opposite: Option, - max_line: LineNumber, + max_opposite: LineNumber, ) -> Vec<(Option, Option)> { let mut prev_opposite: Option = None; let mut res: Vec<(Option, Option)> = vec![]; @@ -150,7 +150,7 @@ fn after_with_opposites( for line in after_lines { let current_opposite: Option = match prev_opposite { Some(prev_opposite) => { - if prev_opposite < max_line { + if prev_opposite < max_opposite { Some((prev_opposite.0 + 1).into()) } else { None @@ -227,7 +227,7 @@ pub fn calculate_context( &padded_lines, opposite_to_lhs, max_opposite, - max_lhs_src_line, + max_rhs_src_line, ) } (_, Some(rhs_line)) => { @@ -243,7 +243,7 @@ pub fn calculate_context( &padded_lines, opposite_to_rhs, max_opposite, - max_rhs_src_line, + max_lhs_src_line, )) } (None, None) => return (vec![], vec![]),