SCReturnPtr(NULL, "void");
}
- uint32_t hash = hashword(data, table->item_size/4, 0) & hashmask(table->hash_bits);
+ const uint32_t hash = hashword(data, table->item_size / 4, 0) & hashmask(table->hash_bits);
/* get offsets start */
- ROHashTableOffsets *os = (void *)table + sizeof(ROHashTable);
- ROHashTableOffsets *o = &os[hash];
+ const ROHashTableOffsets *os = (ROHashTableOffsets *)((uint8_t *)table + sizeof(ROHashTable));
+ const ROHashTableOffsets *o = &os[hash];
/* no matches */
if (o->cnt == 0) {
}
ROHashTableItem *item = NULL;
- ROHashTableOffsets *os = (void *)table + sizeof(ROHashTable);
+ ROHashTableOffsets *os = (ROHashTableOffsets *)((uint8_t *)table + sizeof(ROHashTable));
/* count items per hash value */
TAILQ_FOREACH(item, &table->head, next) {
- uint32_t hash = hashword((void *)item + sizeof(*item), table->item_size/4, 0) & hashmask(table->hash_bits);
+ uint32_t hash =
+ hashword((uint32_t *)((uint8_t *)item + sizeof(*item)), table->item_size / 4, 0) &
+ hashmask(table->hash_bits);
ROHashTableOffsets *o = &os[hash];
item->pos = o->cnt;
/* copy each value into the data block */
TAILQ_FOREACH(item, &table->head, next) {
- uint32_t hash = hashword((void *)item + sizeof(*item), table->item_size/4, 0) & hashmask(table->hash_bits);
+ uint32_t hash =
+ hashword((uint32_t *)((uint8_t *)item + sizeof(*item)), table->item_size / 4, 0) &
+ hashmask(table->hash_bits);
ROHashTableOffsets *o = &os[hash];
uint32_t offset = (o->offset + item->pos) * table->item_size;
- memcpy(table->data + offset, (void *)item + sizeof(*item), table->item_size);
-
+ memcpy(table->data + offset, (uint8_t *)item + sizeof(*item), table->item_size);
}
/* clean up temp items */