Read base_text from the `MultiBufferSnapshot` instead of the live `BufferDiff` entity in `prepare_restore_change`. The live entity's base_text may already reflect a newer git HEAD while the snapshot still holds old hunk byte ranges, causing `Rope::slice` to panic. Self-Review Checklist: - [x] I've reviewed my own diff for quality, security, and reliability - [x] Unsafe blocks (if any) have justifying comments - [x] The content is consistent with the [UI/UX checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist) - [x] Tests cover the new/changed behavior - [x] Performance impact has been considered and is acceptable Closes ZED-64P Release Notes: - N/A
2 files changedLine totals unavailable