diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-29 08:02:47 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:16 -0300 |
| commit | 0ec8d0dc6217486446f2fe2156dff136173a4ef5 (patch) | |
| tree | 8e20f9f0fec47f614492d31c7f03a03e3ac1d0c5 /src/macos.zig | |
| parent | ba0a0f82be43dde325012b3018b186bc808bdafc (diff) | |
| download | pardes-0ec8d0dc6217486446f2fe2156dff136173a4ef5.tar.gz pardes-0ec8d0dc6217486446f2fe2156dff136173a4ef5.zip | |
Tty in a missing directory fails and makes no pane; a shell that never started answers runs
The host could not start the shell (its chdir failed), and the pane stayed
with no pty: a run written to it waited for a prompt for ever. Tty now
refuses a directory that is not there, `Tty: <dir>: no such directory`,
before making a pane; and a terminal whose shell the host could not start
(Pardes.shellFailed, from each host's spawn) answers any run with
`error shell gone`.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/macos.zig')
| -rw-r--r-- | src/macos.zig | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/macos.zig b/src/macos.zig index 4ff13b23..75834844 100644 --- a/src/macos.zig +++ b/src/macos.zig @@ -2441,7 +2441,7 @@ fn spawnShell(ctx: ?*anyopaque, pane: u8, cwd: []const u8) void { st.gens[pane] +%= 1; const gen = st.gens[pane]; - const child = host_io.forkShell(core, pane, &st.prompt_rcs, core.shellBin(), cwd, core.screen_h, core.screen_w, st.ninep) catch |err| return core.reportError(pane, "shell", err); + const child = host_io.forkShell(core, pane, &st.prompt_rcs, core.shellBin(), cwd, core.screen_h, core.screen_w, st.ninep) catch |err| return core.shellFailed(pane, err); st.ptys[pane] = .{ .file = child.file, .pid = child.pid, |
