Merge branch 'v0.22.x'

This commit is contained in:
Max Kellermann
2021-05-17 19:33:15 +02:00
18 changed files with 314 additions and 102 deletions

View File

@@ -114,10 +114,7 @@ tag_pool_get_item(TagType type, StringView value) noexcept
auto slot_p = tag_value_slot_p(type, value);
for (auto slot = *slot_p; slot != nullptr; slot = slot->next) {
if (slot->item.type == type &&
/* strncmp() only works if there are no null
bytes, which FixTagString() has already ensured
at this point */
strncmp(value.data, slot->item.value, value.size) == 0 &&
value.Equals(slot->item.value) &&
slot->ref < TagPoolSlot::MAX_REF) {
assert(slot->ref > 0);
++slot->ref;