diff --git a/lapce-proxy/src/terminal.rs b/lapce-proxy/src/terminal.rs index 45d877f1..fc8685be 100644 --- a/lapce-proxy/src/terminal.rs +++ b/lapce-proxy/src/terminal.rs @@ -52,7 +52,11 @@ pub fn new( let poll = mio::Poll::new().unwrap(); let mut config = TermConfig::default(); config.pty_config.working_directory = - cwd.or_else(|| BaseDirs::new().map(|d| PathBuf::from(d.home_dir()))); + if cwd.is_some() && cwd.clone().unwrap().exists() { + cwd + } else { + BaseDirs::new().map(|d| PathBuf::from(d.home_dir())) + }; let shell = shell.trim(); if !shell.is_empty() { let mut parts = shell.split(' ');