1
1
mirror of https://github.com/wez/wezterm.git synced 2024-12-22 21:01:36 +03:00

Remove mux-server race condition.

New changes were being lost, and not sent to the
client, if they occurred during the time previous
updates were being processed.
This commit is contained in:
Sean Estabrooks 2024-08-17 03:39:28 -04:00 committed by Wez Furlong
parent 6302e976a4
commit 100b85dec9

View File

@ -80,9 +80,11 @@ impl PerPane {
changed = true; changed = true;
} }
let old_seqno = self.seqno;
self.seqno = pane.get_current_seqno();
let mut all_dirty_lines = pane.get_changed_since( let mut all_dirty_lines = pane.get_changed_since(
0..dims.physical_top + dims.viewport_rows as StableRowIndex, 0..dims.physical_top + dims.viewport_rows as StableRowIndex,
self.seqno, old_seqno,
); );
if !all_dirty_lines.is_empty() { if !all_dirty_lines.is_empty() {
changed = true; changed = true;
@ -124,7 +126,6 @@ impl PerPane {
self.working_dir = working_dir.clone(); self.working_dir = working_dir.clone();
self.dimensions = dims; self.dimensions = dims;
self.mouse_grabbed = mouse_grabbed; self.mouse_grabbed = mouse_grabbed;
self.seqno = pane.get_current_seqno();
let bonus_lines = bonus_lines.into(); let bonus_lines = bonus_lines.into();
Some(GetPaneRenderChangesResponse { Some(GetPaneRenderChangesResponse {