diff --git a/src/infra/exec-approvals.ts b/src/infra/exec-approvals.ts index af0142ebc..5c9e4a826 100644 --- a/src/infra/exec-approvals.ts +++ b/src/infra/exec-approvals.ts @@ -519,7 +519,7 @@ function splitShellPipeline(command: string): { ok: boolean; reason?: string; se escaped = false; continue; } - if (!inSingle && ch === "\\") { + if (!inSingle && !inDouble && ch === "\\") { escaped = true; buf += ch; continue; @@ -595,7 +595,7 @@ function tokenizeShellSegment(segment: string): string[] | null { escaped = false; continue; } - if (!inSingle && ch === "\\") { + if (!inSingle && !inDouble && ch === "\\") { escaped = true; continue; }