From bb0d04ce684098d42e9f697c63d3bc422a3dcb2a Mon Sep 17 00:00:00 2001 From: Dylan Hurd Date: Sat, 21 Feb 2026 21:37:45 -0800 Subject: [PATCH] fix(core) exec policy parsing 2 --- codex-rs/shell-command/src/bash.rs | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/codex-rs/shell-command/src/bash.rs b/codex-rs/shell-command/src/bash.rs index 770ff4795b..2a7478a5c1 100644 --- a/codex-rs/shell-command/src/bash.rs +++ b/codex-rs/shell-command/src/bash.rs @@ -128,6 +128,9 @@ pub fn parse_shell_lc_single_command_prefix(command: &[String]) -> Option) -> Option> { single_command } +fn has_named_descendant_kind(node: Node<'_>, kind: &str) -> bool { + let mut stack = vec![node]; + while let Some(current) = stack.pop() { + if current.kind() == kind { + return true; + } + let mut cursor = current.walk(); + for child in current.named_children(&mut cursor) { + stack.push(child); + } + } + false +} + fn parse_double_quoted_string(node: Node, src: &str) -> Option { if node.kind() != "string" { return None;