Skip to content

Commit cf937b0

Browse files
committed
Guard against symbols larger than section
1 parent 23b6d33 commit cf937b0

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

objdiff-core/src/diff/data.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -48,8 +48,10 @@ pub fn diff_data_section(
4848
right_section_diff: &ObjSectionDiff,
4949
) -> Result<(ObjSectionDiff, ObjSectionDiff)> {
5050
let deadline = Instant::now() + Duration::from_secs(5);
51-
let left_max = left.symbols.iter().map(|s| s.section_address + s.size).max().unwrap_or(0);
52-
let right_max = right.symbols.iter().map(|s| s.section_address + s.size).max().unwrap_or(0);
51+
let left_max =
52+
left.symbols.iter().map(|s| s.section_address + s.size).max().unwrap_or(0).min(left.size);
53+
let right_max =
54+
right.symbols.iter().map(|s| s.section_address + s.size).max().unwrap_or(0).min(right.size);
5355
let left_data = &left.data[..left_max as usize];
5456
let right_data = &right.data[..right_max as usize];
5557
let ops =

0 commit comments

Comments
 (0)