Skip to content

Commit 1c43c7c

Browse files
committed
fix(linter): keep message when merging composite fixes (#13827)
1 parent 7d0b8a1 commit 1c43c7c

File tree

1 file changed

+12
-2
lines changed
  • crates/oxc_linter/src/fixer

1 file changed

+12
-2
lines changed

crates/oxc_linter/src/fixer/fix.rs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -548,9 +548,14 @@ impl<'a> CompositeFix<'a> {
548548
let end = fixes[fixes.len() - 1].span.end;
549549
let mut last_pos = start;
550550
let mut output = String::new();
551+
let mut merged_fix_message = None;
551552

552553
for fix in fixes {
553-
let Fix { content, span, .. } = fix;
554+
let Fix { content, span, message } = fix;
555+
if let Some(message) = message {
556+
merged_fix_message.get_or_insert(message);
557+
}
558+
554559
// negative range or overlapping ranges is invalid
555560
if span.start > span.end {
556561
debug_assert!(false, "Negative range is invalid: {span:?}");
@@ -583,7 +588,12 @@ impl<'a> CompositeFix<'a> {
583588

584589
output.push_str(after);
585590
output.shrink_to_fit();
586-
Fix::new(output, Span::new(start, end))
591+
592+
let mut fix = Fix::new(output, Span::new(start, end));
593+
if let Some(message) = merged_fix_message {
594+
fix = fix.with_message(message);
595+
}
596+
fix
587597
}
588598
}
589599

0 commit comments

Comments
 (0)