summaryrefslogtreecommitdiff
path: root/src/fs.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-29 16:19:21 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:16 -0300
commitd6445bb28bcb4a0d0e5f29c6308682737d253ebe (patch)
tree22e4c50aa4f58643190e2aca1176b02ecd6f6c24 /src/fs.zig
parenteb47ded95f43e50dc24b841289b68814105dcfb7 (diff)
downloadpardes-d6445bb28bcb4a0d0e5f29c6308682737d253ebe.tar.gz
pardes-d6445bb28bcb4a0d0e5f29c6308682737d253ebe.zip
A failure said while a 9P write waits on it posts no msg, only the write's err
A failure the editor said as it performed a write's work (a Save's disk write, a shell, a language server) was posted as a msg and taken back out when the write's err was logged, which it cannot be once a log follower has read it: a follower saw both. Such a failure is now posted without a msg in the first place (fs.write_waits), and nothing is taken back. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/fs.zig')
-rw-r--r--src/fs.zig4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/fs.zig b/src/fs.zig
index 2487ffee..edd8fcb8 100644
--- a/src/fs.zig
+++ b/src/fs.zig
@@ -1330,6 +1330,10 @@ pub const Namespace = struct {
/// its header), 0 when unknown: a write shorter than it is the whole of
/// what its client wrote, one that fills it may be cut and go on.
write_room: u32 = 0,
+ /// A 9P write waits on what the editor performs for it (a Save's disk
+ /// write, a shell, a language server): a failure said meanwhile is that
+ /// write's err, so it posts no msg (Messages.reportFailure).
+ write_waits: bool = false,
/// Writes one open made in a row into one place of a pane's body (an
/// append to `body`, an insert at `data`'s address), held and put in
/// as one edit when anything else comes (ninep/pane.zig flushBatch): a