From 8bc595ea1ec9f3103cc6a2caf3c60b7da6eb58d9 Mon Sep 17 00:00:00 2001 From: Zhang Zhang Date: Tue, 7 Apr 2020 15:02:31 -0700 Subject: [PATCH] Fix out-of-bound array access in WQSummary::SetPrune() (#5493) --- src/common/quantile.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/common/quantile.h b/src/common/quantile.h index dd13e7138..067b041bc 100644 --- a/src/common/quantile.h +++ b/src/common/quantile.h @@ -207,7 +207,7 @@ struct WQSummary { // find first i such that d < (rmax[i+1] + rmin[i+1]) / 2 while (i < src.size - 1 && dx2 >= src.data[i + 1].rmax + src.data[i + 1].rmin) ++i; - CHECK(i != src.size - 1); + if (i == src.size - 1) break; if (dx2 < src.data[i].RMinNext() + src.data[i + 1].RMaxPrev()) { if (i != lastidx) { data[size++] = src.data[i]; lastidx = i;