Fix item repo issues with hash clashes and monster buckets.
1) Do not alter bucketPtr before freeing it up. Before, we deleted an item and then sometimes changed the bucketPtr when there where clashing items. If the new bucketPtr was then a monster, we assumed its item was deleted and assert that. As we deleted the item in a different bucket, the assertion did not hold and we crashed... The assertion happens when a normal item is deleted and another monster item exists with the same hash in a different bucket. 2) Unset next bucket for hash, before deconverting it. This is probably just a workaround, as a comment above hints at a general problem here, that this should be done more regularly. Calling setNextBucketForHash(hash, 0) always though leads to other, new problems and assertions. So I'll leave it as is for now. The assertion happens when a monster item is deleted and another item exists with the same hash in a different bucket. BUG: 272408
Loading
Please register or sign in to comment