From 368fe111553604dd4506d7f80a518c14431427d0 Mon Sep 17 00:00:00 2001 From: dzaima Date: Wed, 28 May 2025 00:38:57 +0300 Subject: [PATCH] fix heuristic bounds of select_rows_direct inds_buf has limited size; failed fuzz/select-cells --- src/builtins/select.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/builtins/select.c b/src/builtins/select.c index 2b6a76b7..09f01f15 100644 --- a/src/builtins/select.c +++ b/src/builtins/select.c @@ -742,7 +742,7 @@ B select_rows_direct(B x, ux csz, ux cam, void* inds, ux indn, u8 ie) { // ⥊ ( if (ie==el_bit) { // TODO path for xe==el_bit + long indn - if (HEURISTIC_BOUNDED(csz>32 || indn>32 || indn>INDS_BUF_MAX, xe!=el_bit && (csz>8 || indn>8), true)) { // TODO properly tune + if (HEURISTIC_BOUNDED(csz>32 || indn>32 || indn>INDS_BUF_MAX, xe!=el_bit && (csz>8 || indn>8), indn<=32)) { // TODO properly tune u8* rp = m_arrv_same(&r, &rbp, ria, x); for (ux i = 0; i < cam; i++) { bitselFns[lb](rp, inds, loadu_u64(xp), loadu_u64(xp + (1<