summaryrefslogtreecommitdiff
path: root/src/pardes.zig
diff options
context:
space:
mode:
authorGabriel Schneider <[email protected]>2026-09-28 01:09:59 -0300
committerGabriel Schneider <[email protected]>2026-10-01 00:12:14 -0300
commitbb380c6b44b649a2e9192311478ee52d69c702dc (patch)
tree14b01cb3d2c7f5c511ea76020dc06a9b8d8bcdb5 /src/pardes.zig
parentf48ab559a4d257137a3aae987a4962f9d74ede23 (diff)
downloadpardes-bb380c6b44b649a2e9192311478ee52d69c702dc.tar.gz
pardes-bb380c6b44b649a2e9192311478ee52d69c702dc.zip
Free a pane's texts with Text.deinit alone
Teardown freed the body's undo by hand beside the tag's deinit, and the prompt line's characters by hand too; the three texts now go the same way, so what a Text owns is freed in one place. Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'src/pardes.zig')
-rw-r--r--src/pardes.zig5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/pardes.zig b/src/pardes.zig
index 40e49d6a..b7cf5574 100644
--- a/src/pardes.zig
+++ b/src/pardes.zig
@@ -4120,10 +4120,9 @@ pub const Pardes = struct {
if (comptime pdf_enabled) if (pane.pdf) |*pv| panes.Pdf.deinitPane(p, pane, pv);
if (pane.file) |*file| panes.File.deinit(p, pane, file);
if (pane.ovl) |o| p.gpa.free(o.text);
- if (pane.input.own) |text| p.gpa.free(text);
+ pane.body.deinit(p.gpa);
pane.tag.deinit(p.gpa);
- for (pane.body.ed_undo[0..pane.body.ed_undo_len]) |sn| if (sn.ovl) |o| p.gpa.free(o.text);
- for (pane.body.ed_redo[0..pane.body.ed_redo_len]) |sn| if (sn.ovl) |o| p.gpa.free(o.text);
+ pane.input.deinit(p.gpa);
panes.Terminal.deinitEmulator(pane, p.gpa);
pane.clearCwd();
pane.fs.deinit(p.gpa);