Check for equality instead of assigning in asserts in hpa_from_pai.

It appears like a simple typo means we're unconditionally overwriting
some fields in hpa_from_pai when asserts are enabled. From hpa_shard_init,
it looks like these fields have these values anyway, so this shouldn't
cause bugs, but if something is wrong it seems better to have these
asserts in place.

See issue #2412.
This commit is contained in:
Eric Mueller 2023-04-17 18:59:25 -07:00 committed by Qi Wang
parent 5f64ad60cd
commit 521970fb2e

View File

@ -703,10 +703,10 @@ hpa_alloc_batch_psset(tsdn_t *tsdn, hpa_shard_t *shard, size_t size,
static hpa_shard_t *
hpa_from_pai(pai_t *self) {
assert(self->alloc = &hpa_alloc);
assert(self->expand = &hpa_expand);
assert(self->shrink = &hpa_shrink);
assert(self->dalloc = &hpa_dalloc);
assert(self->alloc == &hpa_alloc);
assert(self->expand == &hpa_expand);
assert(self->shrink == &hpa_shrink);
assert(self->dalloc == &hpa_dalloc);
return (hpa_shard_t *)self;
}