aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorJJ Liebig <jonathan.liebig@gmail.com>2026-08-22 22:34:38 +0200
committerGitHub <noreply@github.com>2026-08-22 23:34:38 +0300
commitc714e4c20e3272c21722a6f083fc2d592c244385 (patch)
tree553fa248c94f87605f6bf223fda6253d33874f06 /src
parent1c76079f8b9494ec1c971c80fda34c116ecb89dd (diff)
fix: clear Windows Terminal identity in panes (#3127)
Diffstat (limited to 'src')
-rw-r--r--src/pane.rs11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/pane.rs b/src/pane.rs
index b2e1603d..9f2416ab 100644
--- a/src/pane.rs
+++ b/src/pane.rs
@@ -78,6 +78,7 @@ fn apply_pane_terminal_env(cmd: &mut CommandBuilder) {
// when the remote side lacks matching terminfo entries.
cmd.env("TERM", PANE_TERM);
cmd.env("COLORTERM", PANE_COLORTERM);
+ cmd.env_remove("WT_SESSION");
}
#[derive(Debug, Clone, Default, PartialEq, Eq)]
@@ -3101,6 +3102,16 @@ mod tests {
assert!(cmd.get_env("CODEX_THREAD_ID").is_none());
}
+ #[test]
+ fn pane_terminal_identity_removes_outer_windows_terminal_session() {
+ let mut cmd = CommandBuilder::new("shell");
+ cmd.env("WT_SESSION", "outer-session");
+
+ apply_pane_terminal_env(&mut cmd);
+
+ assert!(cmd.get_env("WT_SESSION").is_none());
+ }
+
#[tokio::test]
async fn cwd_returns_accepted_report_without_rechecking_filesystem() {
let stamp = std::time::SystemTime::now()