Wilfred / difftastic

a structural diff that understands syntax 🟥🟩
https://difftastic.wilfred.me.uk/
MIT License
21.12k stars 345 forks source link

thread 'main' panicked at 'Hunk lines should be present in matched lines', src/display/hunks.rs:663:23 #770

Open Adamkadaban opened 1 month ago

Adamkadaban commented 1 month ago

Panic in display/hunks.rs

Files: 1.txt 2.txt

image

thread 'main' panicked at 'Hunk lines should be present in matched lines', src/display/hunks.rs:663:23
stack backtrace:
   0:     0x56481b1cb5b5 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::hb070b7fa7e3175df
   1:     0x56481b01c23e - core::fmt::write::hd5207aebbb9a86e9
   2:     0x56481b1c7b05 - std::io::Write::write_fmt::h3bd699bbd129ab8a
   3:     0x56481b1ccd23 - std::panicking::default_hook::{{closure}}::h04cca40023d0eeca
   4:     0x56481b1cca2f - std::panicking::default_hook::haa3ca8c310ed5402
   5:     0x56481b1cd34c - std::panicking::rust_panic_with_hook::h7b190ce1a948faac
   6:     0x56481b1cd254 - std::panicking::begin_panic_handler::{{closure}}::hbafbfdc3e1b97f68
   7:     0x56481b1cbabc - std::sys_common::backtrace::__rust_end_short_backtrace::hda93e5fef243b4c0
   8:     0x56481b1ccfa2 - rust_begin_unwind
   9:     0x56481af7c793 - core::panicking::panic_fmt::h8d17ca1073d9a733
  10:     0x56481b01ace1 - core::panicking::panic_display::he956d1fbfe1d4c76
  11:     0x56481b01ac8b - core::panicking::panic_str::h7d5968eea59d06d2
  12:     0x56481af7c606 - core::option::expect_failed::h03d502d0855ade10
  13:     0x56481b089b96 - difft::display::hunks::matched_lines_indexes_for_hunk::h4b77df964d62e4c9
  14:     0x56481b07a891 - difft::display::side_by_side::print::h5d49acdfd78f8219
  15:     0x56481b03e06b - difft::print_diff_result::hbab8ebae5e039c47
  16:     0x56481b039f54 - difft::main::h829b432de9803b7e
  17:     0x56481b046203 - std::sys_common::backtrace::__rust_begin_short_backtrace::h1cf47cf43a9e9613
  18:     0x56481b08cdb9 - std::rt::lang_start::{{closure}}::hfa91847e2be1747f
  19:     0x56481b1c180a - std::rt::lang_start_internal::h6ba1bb743c1e9df9
  20:     0x56481b03e728 - main
  21:     0x7fcd62d4724a - __libc_start_call_main
                               at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
  22:     0x7fcd62d47305 - __libc_start_main_impl
                               at ./csu/../csu/libc-start.c:360:3
  23:     0x56481af9781e - _start
  24:                0x0 - <unknown>

Version: Difftastic 0.60.0 (1ac9553 2024-07-30, built with rustc 1.65.0) Downloaded from releases

Adamkadaban commented 2 weeks ago

I'm unsure if this was the case when I first submitted the issue, but it seems this now only happens with one order of the files image

thread 'main' panicked at 'Hunk lines should be present in matched lines', src/display/hunks.rs:663:23
stack backtrace:
   0:     0x55bb9f96fd15 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h3155a8c966b4beb5
   1:     0x55bb9f7bf23e - core::fmt::write::h062c617411b691df
   2:     0x55bb9f96c8d5 - std::io::Write::write_fmt::hb61fdf1275c61e1c
   3:     0x55bb9f96fae5 - std::sys_common::backtrace::print::hca896ae22beb06cb
   4:     0x55bb9f9712bf - std::panicking::default_hook::{{closure}}::h0b5eeed5cf36ab5f
   5:     0x55bb9f97102a - std::panicking::default_hook::h8932b573145a321b
   6:     0x55bb9f97192f - std::panicking::rust_panic_with_hook::h4b1447a24e3e94f8
   7:     0x55bb9f9716e4 - std::panicking::begin_panic_handler::{{closure}}::h8701da9995a3820c
   8:     0x55bb9f97021c - std::sys_common::backtrace::__rust_end_short_backtrace::hb696c5ed02a01598
   9:     0x55bb9f971432 - rust_begin_unwind
  10:     0x55bb9f71c5c3 - core::panicking::panic_fmt::h8aa706a976963c88
  11:     0x55bb9f7bdce1 - core::panicking::panic_display::h145080b539a57164
  12:     0x55bb9f7bdc8b - core::panicking::panic_str::hb7f52c873200464f
  13:     0x55bb9f71c586 - core::option::expect_failed::hf416ac71eef81151
  14:     0x55bb9f82f3c6 - difft::display::hunks::matched_lines_indexes_for_hunk::h9f9e2aa738126b7f
  15:     0x55bb9f820044 - difft::display::side_by_side::print::h9b8d9ae36adfd23d
  16:     0x55bb9f7e109b - difft::print_diff_result::h8899cf4ba00640da
  17:     0x55bb9f7dd01e - difft::main::h2b7829dd9e2a2a59
  18:     0x55bb9f7e94f3 - std::sys_common::backtrace::__rust_begin_short_backtrace::he7f7716f7442975a
  19:     0x55bb9f840d39 - std::rt::lang_start::{{closure}}::hfde1be8a0e006cca
  20:     0x55bb9f965fd8 - std::rt::lang_start_internal::hcd7e45acd25ab5ab
  21:     0x55bb9f7e1755 - main
  22:     0x7fdf7104624a - __libc_start_call_main
                               at ./csu/../sysdeps/nptl/libc_start_call_main.h:58:16
  23:     0x7fdf71046305 - __libc_start_main_impl
                               at ./csu/../csu/libc-start.c:360:3
  24:     0x55bb9f73a18e - _start
  25:                0x0 - <unknown>