aboutsummaryrefslogtreecommitdiffstats
path: root/searchlib
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@online.no>2023-09-26 15:50:46 +0200
committerTor Egge <Tor.Egge@online.no>2023-09-26 15:50:46 +0200
commitd13af403c6279b5ddbceaedd7d070360399a3aa7 (patch)
treec8d4aab6e23c9aecfb1490670a15680a0fee41b6 /searchlib
parentfcd0868ab10343bef4d3925f21c59cb8f577d51c (diff)
Avoid overflow in PostingListSearchContextT::approximateHits() member function.
Diffstat (limited to 'searchlib')
-rw-r--r--searchlib/src/vespa/searchlib/attribute/postinglistsearchcontext.hpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/searchlib/src/vespa/searchlib/attribute/postinglistsearchcontext.hpp b/searchlib/src/vespa/searchlib/attribute/postinglistsearchcontext.hpp
index bd1cc1191a7..b466f8189f1 100644
--- a/searchlib/src/vespa/searchlib/attribute/postinglistsearchcontext.hpp
+++ b/searchlib/src/vespa/searchlib/attribute/postinglistsearchcontext.hpp
@@ -227,7 +227,7 @@ template <typename DataT>
unsigned int
PostingListSearchContextT<DataT>::approximateHits() const
{
- unsigned int numHits = 0;
+ size_t numHits = 0;
if (_uniqueValues == 0u) {
} else if (_uniqueValues == 1u) {
numHits = singleHits();
@@ -249,7 +249,7 @@ PostingListSearchContextT<DataT>::approximateHits() const
numHits = countHits();
}
}
- return numHits;
+ return std::min(numHits, size_t(std::numeric_limits<uint32_t>::max()));
}