
Kirill BulatovandConrad
e2bcb28286
Use proper buffer versions when [de]serializing hint proto requests (#8502)
During inlay hint<->proto conversions, uses proper buffer versions and
never carries them across the .await points, to fix the
```
thread 'main' panicked at 'invalid anchor Anchor { timestamp: Lamport {0: 8558}, offset: 54, bias: Right, buffer_id: Some(BufferId(8)) }. buffer id: 8, version: Global {0: 8546, 1: 8378}'
/Users/administrator/actions-runner-2/_work/zed/zed/crates/text/src/text.rs:1919
<backtrace::capture::Backtrace>::create
<backtrace::capture::Backtrace>::new
Zed::init_panic_hook::{closure#0}
std::panicking::rust_panic_with_hook
std::panicking::begin_panic_handler::{{closure}}
std::sys_common::backtrace::__rust_end_short_backtrace
_rust_begin_unwind
core::panicking::panic_fmt
<text::BufferSnapshot>::summary_for_anchor::<usize>
<multi_buffer::anchor::Anchor as multi_buffer::ToOffset>::to_offset
<editor::display_map::DisplayMap>::splice_inlays
<editor::Editor>::splice_inlay_hints
editor::inlay_hint_cache::fetch_and_update_hints::{closure#0}::{closure#0}
<async_task::raw::RawTask<<async_task::runnable::Builder<_>>::spawn_local::Checked<core::pin::Pin<alloc::boxed::Box<dyn core::future::future::Future<Output = core::result::Result<(), anyhow::Error>>>>>, core::result::Result<(), anyhow::Error>, <gpui::executor::ForegroundExecutor>::spawn::inner<core::result::Result<(), anyhow::Error>>::{closure#0}, ()>>::run
<gpui::platform::mac::platform::MacPlatform as gpui::platform::Platform>::run
Zed::main
std::sys_common::backtrace::__rust_begin_short_backtrace::<fn(), ()>
std::rt::lang_start::<()>::{closure#0}
std::rt::lang_start_internal
_main
```
class of panics.
Release Notes:
- Fixed occasional panics during collaborative editing with inlay hints
on both sides
Co-authored-by: Conrad <conrad@zed.dev>
2024-02-27 22:19:11 +02:00
..
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-06 20:41:36 +01:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-26 22:15:11 -07:00
2024-02-26 22:15:11 -07:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-22 22:28:08 -05:00
2024-02-27 20:41:49 +02:00
2024-02-26 22:15:11 -07:00
2024-01-30 14:08:20 -05:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-25 13:21:20 -05:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-27 11:18:13 +01:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-25 10:10:07 +02:00
2024-02-26 11:08:57 +02:00
2024-02-08 08:35:37 -08:00
2024-02-06 20:41:36 +01:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 00:04:56 +02:00
2024-02-23 15:18:32 -08:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-27 11:18:13 +01:00
2024-02-25 10:10:07 +02:00
2024-02-26 11:08:57 +02:00
2024-02-26 17:08:49 -08:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-25 00:41:28 +02:00
2024-02-26 21:04:48 +02:00
2024-02-26 11:08:57 +02:00
2024-02-06 20:41:36 +01:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 22:19:11 +02:00
2024-02-26 22:09:22 +01:00
2024-02-27 18:42:15 +01:00
2024-02-26 11:08:57 +02:00
2024-02-18 08:14:08 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-06 20:41:36 +01:00
2024-02-27 20:41:49 +02:00
2024-02-17 09:03:05 -07:00
2024-02-26 22:15:11 -07:00
2024-02-26 11:08:57 +02:00
2024-02-26 11:08:57 +02:00
2024-02-25 00:41:28 +02:00
2024-01-29 23:47:20 -05:00
2024-02-07 19:06:03 +02:00
2024-02-26 11:08:57 +02:00
2024-02-06 20:41:36 +01:00
2024-02-25 10:10:07 +02:00
2024-02-17 09:03:05 -07:00
2024-02-25 10:10:07 +02:00
2024-02-27 20:41:49 +02:00
2024-02-23 11:13:28 -05:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-26 11:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-27 20:41:49 +02:00
2024-02-24 00:07:24 -05:00
2024-02-25 00:08:57 +02:00
2024-02-27 20:41:49 +02:00
2024-02-25 00:41:28 +02:00
2024-02-26 22:15:50 -07:00
2024-02-27 20:41:49 +02:00
2024-02-06 20:41:36 +01:00