From 828f406b4fc068febcd20521a03ad2f2a5910c72 Mon Sep 17 00:00:00 2001 From: Mikayla Maki Date: Mon, 9 Jan 2023 10:54:13 -0800 Subject: [PATCH] Fixed issue where serialized terminal working directories would be lost in complex interactions Co-authored-by: Kay Co-authored-by: Julia --- crates/terminal_view/src/persistence.rs | 6 +++--- crates/terminal_view/src/terminal_view.rs | 3 +-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/crates/terminal_view/src/persistence.rs b/crates/terminal_view/src/persistence.rs index f090b384a44ae1c0a0e5743ed9060e14ccf6d052..26bd0931fe2d1d738406cf79406b8afea11df0c1 100644 --- a/crates/terminal_view/src/persistence.rs +++ b/crates/terminal_view/src/persistence.rs @@ -42,10 +42,10 @@ impl TerminalDb { } query! { - pub async fn take_working_directory(item_id: ItemId, workspace_id: WorkspaceId) -> Result> { - DELETE FROM terminals + pub fn get_working_directory(item_id: ItemId, workspace_id: WorkspaceId) -> Result> { + SELECT working_directory + FROM terminals WHERE item_id = ? AND workspace_id = ? - RETURNING working_directory } } } diff --git a/crates/terminal_view/src/terminal_view.rs b/crates/terminal_view/src/terminal_view.rs index a4f90a8d72c095146b9a28527dd92f6f4069bae1..e02a9758dd24f4568cce6b33da0099f53c259fd0 100644 --- a/crates/terminal_view/src/terminal_view.rs +++ b/crates/terminal_view/src/terminal_view.rs @@ -706,8 +706,7 @@ impl Item for TerminalView { let window_id = cx.window_id(); cx.spawn(|pane, mut cx| async move { let cwd = TERMINAL_DB - .take_working_directory(item_id, workspace_id) - .await + .get_working_directory(item_id, workspace_id) .log_err() .flatten();