summaryrefslogtreecommitdiff
path: root/src/screen.c
diff options
context:
space:
mode:
authorBerke Güzel <wenekar1@gmail.com>2026-10-13 19:41:47 +0300
committerBerke Güzel <wenekar1@gmail.com>2026-10-13 19:41:47 +0300
commit1b52f704a005d79d00b1260b1e5bc5d6798ff7b6 (patch)
tree798c93f1007d0156635d9db63d47ae9a6328dd80 /src/screen.c
parent01e1c61e9fcf4a0b0164a7fe5395a209a50f6905 (diff)
Replace scalar loops with SIMD spans, packed stores, and direct wrap-pad checks
Diffstat (limited to 'src/screen.c')
-rw-r--r--src/screen.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/screen.c b/src/screen.c
index e3f0191..99e788c 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -1024,10 +1024,13 @@ void term_free(struct term *t)
screen_free(&t->scr);
screen_free(&t->alt_scr);
screen_free(&t->spare);
- struct grow_buf *bufs[] = { &t->resize.row, &t->resize.rows, &t->resize.cells, &t->resize.line,
- &t->resize.pull, &t->resize.rest, &t->resize.lens };
- for (size_t i = 0; i < sizeof(bufs) / sizeof(bufs[0]); i++)
- free(bufs[i]->data);
+ free(t->resize.row.data);
+ free(t->resize.rows.data);
+ free(t->resize.cells.data);
+ free(t->resize.line.data);
+ free(t->resize.pull.data);
+ free(t->resize.rest.data);
+ free(t->resize.lens.data);
free(t->ascii_ends.data);
free(t->ascii_tail.data);
term_hist_free(&t->hist);