Fixed issue where serialized terminal working directories would be lost in complex interactions

Co-authored-by: Kay <kay@zed.dev>
Co-authored-by: Julia <julia@zed.dev>
This commit is contained in:
Mikayla Maki 2023-01-09 10:54:13 -08:00
parent e743f3b1d8
commit 828f406b4f
2 changed files with 4 additions and 5 deletions

View File

@ -42,10 +42,10 @@ impl TerminalDb {
}
query! {
pub async fn take_working_directory(item_id: ItemId, workspace_id: WorkspaceId) -> Result<Option<PathBuf>> {
DELETE FROM terminals
pub fn get_working_directory(item_id: ItemId, workspace_id: WorkspaceId) -> Result<Option<PathBuf>> {
SELECT working_directory
FROM terminals
WHERE item_id = ? AND workspace_id = ?
RETURNING working_directory
}
}
}

View File

@ -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();