# Fix panic in restore_diff_hunks when base text changes async \(\#52743\) · gitcafe/zed

[View on GitCafe](https://git.cafe/gitcafe/zed/commit/22b71a8205dc782f3d67284941f3e469d6024c53)

Repository: [gitcafe/zed](https://git.cafe/gitcafe/zed)

Visibility: public

Requested revision: 22b71a8205dc782f3d67284941f3e469d6024c53

Requested commit: 22b71a8205dc782f3d67284941f3e469d6024c53

Commit: 22b71a8205dc782f3d67284941f3e469d6024c53

Tree: 839b4adb3a7728590c475fbb7a856b5757cf71bc

Author: Oleksiy Syvokon

Committer: GitHub

## Message

```
Fix panic in restore_diff_hunks when base text changes async (#52743)

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
```

## Parents

- [8b7cc094575cdfc2342540dac87ceffd92fe8520](https://git.cafe/gitcafe/zed/commit/8b7cc094575cdfc2342540dac87ceffd92fe8520?format=markdown)

[Source at this commit](https://git.cafe/gitcafe/zed/tree/22b71a8205dc782f3d67284941f3e469d6024c53?format=markdown)
