summaryrefslogtreecommitdiff
path: root/src/platform/macos.rs
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-07-17 23:55:08 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-07-17 23:59:56 +0300
commite0758c32118f2aa006db3d8fa4b41833fe6e7ead (patch)
tree2b29dd61ebf870db8d0ac95cc0b4515178c834c4 /src/platform/macos.rs
parent040956531f673c8fb7720037494ed4e61b123c6c (diff)
feat: harden named agent cli workflows
refs #1525
Diffstat (limited to 'src/platform/macos.rs')
-rw-r--r--src/platform/macos.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/platform/macos.rs b/src/platform/macos.rs
index f35fd1eb..161354d7 100644
--- a/src/platform/macos.rs
+++ b/src/platform/macos.rs
@@ -45,6 +45,10 @@ pub(crate) fn scrollback_editor_argv(path: &Path) -> std::io::Result<Vec<String>
Ok(vec!["/bin/sh".to_string(), "-c".to_string(), command])
}
+pub(crate) fn interactive_shell_command(argv: &[String], shell_name: &str) -> Option<String> {
+ super::interactive_unix_shell_command(argv, shell_name, shell_quote)
+}
+
fn shell_quote(value: &str) -> String {
if !value.is_empty()
&& value.chars().all(|ch| {
@@ -315,6 +319,10 @@ fn target_nofile_soft_limit(
(current < target).then_some(target)
}
+pub(crate) fn available_pane_shell(child_pid: u32) -> Option<String> {
+ super::available_pane_shell_from_job(child_pid, foreground_job(child_pid)?)
+}
+
/// Collect the foreground terminal job for a given child PID.
pub fn foreground_job(child_pid: u32) -> Option<ForegroundJob> {
if child_pid == 0 {