MCPcopy Create free account
hub / github.com/diasurgical/devilution / mpqapi_remove_hash_entry

Function mpqapi_remove_hash_entry

Source/mpqapi.cpp:324–341  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

322} // namespace
323
324void mpqapi_remove_hash_entry(const char *pszName)
325{
326 _HASHENTRY *pHashTbl;
327 _BLOCKENTRY *blockEntry;
328 int hIdx, block_offset, block_size;
329
330 hIdx = FetchHandle(pszName);
331 if (hIdx != -1) {
332 pHashTbl = &cur_archive.sgpHashTbl[hIdx];
333 blockEntry = &cur_archive.sgpBlockTbl[pHashTbl->block];
334 pHashTbl->block = -2;
335 block_offset = blockEntry->offset;
336 block_size = blockEntry->sizealloc;
337 memset(blockEntry, 0, sizeof(*blockEntry));
338 mpqapi_alloc_block(block_offset, block_size);
339 cur_archive.modified = true;
340 }
341}
342
343void mpqapi_alloc_block(int block_offset, int block_size)
344{

Callers 3

mpqapi_write_fileFunction · 0.85

Calls 2

FetchHandleFunction · 0.85
mpqapi_alloc_blockFunction · 0.85

Tested by

no test coverage detected