diff options
Diffstat (limited to 'src/pardes.zig')
| -rw-r--r-- | src/pardes.zig | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/pardes.zig b/src/pardes.zig index b15cfb00..2b0ed8f0 100644 --- a/src/pardes.zig +++ b/src/pardes.zig @@ -6760,15 +6760,16 @@ pub const Pardes = struct { const dir = if (pane.file) |f| (std.fs.path.dirname(f.path) orelse "/") else pane.cwdSlice(); const content = p.gpa.dupe(u8, rows) catch return; + const serial_before = p.next_serial; + p.fs.refilled = null; panes.Output.fillResults(p, w.pane, dir, from, w.arg.slice(), content, null) catch |err| { p.reportError(w.pane, "language response", err); return; }; // What a 9P write that asked it answers: the pane the rows are in - // (a multi-file Rename's preview), not the pane it was asked from. - if (pane.search_pane) |rid| if (p.panes[rid]) |rp| { - p.fs.lsp_result = rp.serial; - }; + // (a multi-file Rename's preview, Lspinfo's +Lsp), made or filled + // again, not the pane it was asked from. + p.fs.lsp_result = if (p.next_serial != serial_before) p.next_serial else p.fs.refilled; if (w.kind == .rename) { var said_buf: [128]u8 = undefined; // Rows that only name a file the server left alone (lsp_client |
