aboutsummaryrefslogtreecommitdiff
path: root/src/app/mod.rs
diff options
context:
space:
mode:
authorakbash <akbash@herdr.dev>2026-07-13 17:25:52 +0300
committerGitHub <noreply@github.com>2026-07-13 17:25:52 +0300
commit75ed6abc6258f09af5d4fc995a5004c1abf14fc2 (patch)
tree7dd561becfc189f2dbe6f153d0c870ac913351ae /src/app/mod.rs
parent6e85ff07f188186edcec8ac0e8263f899c7f1f26 (diff)
fix: reap detached custom command children (#1384)
* fix: reap detached custom command children refs #1360 * test: harden child cleanup and sidebar metrics refs #1360 --------- Co-authored-by: akbash-bot <300245827+akbash-bot@users.noreply.github.com>
Diffstat (limited to 'src/app/mod.rs')
-rw-r--r--src/app/mod.rs3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/app/mod.rs b/src/app/mod.rs
index bff04c44..16cfeafb 100644
--- a/src/app/mod.rs
+++ b/src/app/mod.rs
@@ -130,6 +130,7 @@ pub struct App {
pub(crate) selection_highlight_clear_deadline: Option<Instant>,
pub(crate) session_save_deadline: Option<Instant>,
pub(crate) session_save_thread: Option<std::thread::JoinHandle<()>>,
+ pub(crate) detached_custom_command_children: Vec<std::process::Child>,
pub(crate) persist_pane_history: bool,
pub(crate) last_render_at: Option<Instant>,
pub(crate) suppressed_repeat_keys:
@@ -725,6 +726,7 @@ impl App {
pending_agent_resume_deadline: None,
session_save_deadline: None,
session_save_thread: None,
+ detached_custom_command_children: Vec::new(),
selection_autoscroll_deadline: None,
selection_highlight_clear_deadline: None,
persist_pane_history: config.experimental.pane_history,
@@ -879,6 +881,7 @@ impl App {
let mut host_mouse_capture_active = self.state.mouse_capture;
while !self.state.should_quit {
+ self.reap_finished_custom_commands();
if self.render_dirty.load(Ordering::Acquire) {
needs_render = true;
}