summaryrefslogtreecommitdiff
path: root/src/ninep/tree.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-30 11:14:09 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:17 -0300
commitc820afd8601ef14fda651c63f542476e12adcf11 (patch)
tree181aca8abdffa387f1eff3a9bd8f6acf109a5deb /src/ninep/tree.zig
parentf18b1adc04dad68e115bb70c42e26472733daf1d (diff)
downloadpardes-c820afd8601ef14fda651c63f542476e12adcf11.tar.gz
pardes-c820afd8601ef14fda651c63f542476e12adcf11.zip
Nothing about a pane is logged before its new, and the boot terminal's new carries the session directory, not / and a rename
A pane named in the update that made it (Config's init file, a look renamed on open) logged `rename N <name>` before `new N`, so a follower met a serial it had never seen. The boot shell, started with no directory, was announced as `new 1 /` and renamed once its shell spoke. Now noteLog drops the rename of a pane not yet announced, since its new carries the name, and announces a pane first for any other record about it. A terminal whose shell has not said where it is is named by the session's directory, where it was started, and the shell saying so is no rename. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/ninep/tree.zig')
-rw-r--r--src/ninep/tree.zig2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ninep/tree.zig b/src/ninep/tree.zig
index 61ac7e87..10208666 100644
--- a/src/ninep/tree.zig
+++ b/src/ninep/tree.zig
@@ -1053,7 +1053,7 @@ fn readFile(p: *Pardes, req: Req, target: Target) Reply {
// A name as /log shows it: one line of UTF-8, a
// newline in it `\n` (events.shown).
var name_buf: [4 * 4096]u8 = undefined;
- const name = events.shown(pane.nameOf(pn), &name_buf);
+ const name = events.shown(pane.nameOf(p, pn), &name_buf);
out.print(p.gpa, "{d} {s} {d} {s} {d}\n", .{ serial, pane.kindOf(pn), @intFromBool(pane.dirtyOf(pn)), name, pane.columnOf(p, id) }) catch {};
}
break :index stagedReply(p, req);