From 549e65ce18f3f223ffdca93b967f1f49a97054ec Mon Sep 17 00:00:00 2001 From: WormHeamer Date: Thu, 1 Jan 2026 19:28:31 -0500 Subject: fix bug of passing capacity instead of length in select_buf() --- main.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/main.c b/main.c index 3fa36f5..3367bee 100644 --- a/main.c +++ b/main.c @@ -1222,11 +1222,14 @@ int select_buf(void) { for (u32 i = 0; i < e.bufn; i++) { DA_APUSH(&opt, &e.scratch, e.buf[i].path); } + ASSERT(opt.n == e.bufn); Str prefix = minimum_prefix(opt.v, opt.n); while (prefix.n > 0 && prefix.s[prefix.n-1] != '/') prefix.n--; - for (u32 i = 0; i < opt.n; i++) + for (u32 i = 0; i < opt.n; i++) { + ASSERT(opt.v[i].n > prefix.n); opt.v[i] = str_skip(opt.v[i], prefix.n); - int o = select_opt(opt.v, opt.c, S("Buffer: ")); + } + int o = select_opt(opt.v, opt.n, S("Buffer: ")); if (o == -1) return -1; return o; } -- cgit v1.2.3