summaryrefslogtreecommitdiff
path: root/src/ninep/events.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 05:24:25 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commit637ab988f0922173055ea98b1f76916e42f4222a (patch)
tree4b28a9f9409482e58f091cee3e3844c1643c0144 /src/ninep/events.zig
parente9eae368dbbe855ad2f409913ff0d44d5ac32bd8 (diff)
downloadpardes-637ab988f0922173055ea98b1f76916e42f4222a.tar.gz
pardes-637ab988f0922173055ea98b1f76916e42f4222a.zip
A prompt a 9P request opens is an ask, answered with answer, never stacked
Save through exec on a terminal (or a scratch) opened its path prompt on screen, where no script could see or answer it, and a second Save stacked another. Opened while a 9P request is served, it now logs ask <serial> save path; answer <path> on the pane's ctl saves there and closes it, answer - closes it; asked again, the open one stands. A pane closed with it open logs answer <serial> -. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/ninep/events.zig')
-rw-r--r--src/ninep/events.zig2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ninep/events.zig b/src/ninep/events.zig
index d2beecd1..105397f3 100644
--- a/src/ninep/events.zig
+++ b/src/ninep/events.zig
@@ -124,7 +124,7 @@ pub fn noteRetire(p: *Pardes, pane: *Pane) void {
}
// A question still standing ends with it, so a follower of its `ask`
// hears the end.
- if (pane.prompt == .repl_choice or pane.prompt == .del_side) {
+ if (pane.prompt == .repl_choice or pane.prompt == .del_side or pane.prompt == .save) {
var rec: [32]u8 = undefined;
notePath(p, "answer", std.fmt.bufPrint(&rec, "{d} -", .{pane.serial}) catch "");
}