Skip to content
This repository was archived by the owner on Mar 22, 2023. It is now read-only.

Commit eb1bc68

Browse files
Merge pull request #928 from igchor/fix_comparison
radix_tree: fix internal find
2 parents f350cf9 + 92896a2 commit eb1bc68

File tree

2 files changed

+3
-1
lines changed

2 files changed

+3
-1
lines changed

include/libpmemobj++/experimental/radix_tree.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1746,7 +1746,7 @@ radix_tree<Key, Value, BytesView>::internal_find(const K &k) const
17461746
while (n && !n.is_leaf()) {
17471747
if (path_length_equal(key.size(), n))
17481748
n = n->embedded_entry;
1749-
else if (n->byte > key.size())
1749+
else if (n->byte >= key.size())
17501750
return nullptr;
17511751
else
17521752
n = n->child[slice_index(key[n->byte], n->bit)];

include/libpmemobj++/string_view.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
#define LIBPMEMOBJ_CPP_STRING_VIEW
1111

1212
#include <algorithm>
13+
#include <cassert>
1314
#include <string>
1415

1516
#if __cpp_lib_string_view
@@ -161,6 +162,7 @@ template <typename CharT, typename Traits>
161162
inline const CharT &basic_string_view<CharT, Traits>::operator[](size_t p) const
162163
noexcept
163164
{
165+
assert(p < size());
164166
return data()[p];
165167
}
166168

0 commit comments

Comments
 (0)