CHUNK_t* FindChunk(SAVESTATE_t* save, const char *tag) { int i; for(i = 0; i < save->chunk_count; i++) { if (cmpTags(save->chunks[i]->tag, tag) == true) { save->chunks[i]->pnt = 0; return save->chunks[i]; } } return nullptr; }
bool DelChunk(SAVESTATE_t *save, const char *tag) { int i; for(i = 0; i < save->chunk_count; i++) { if (cmpTags(save->chunks[i]->tag, tag) == true) { if (save->chunks[i]->data) free(save->chunks[i]->data); if (save->chunks[i]) free(save->chunks[i]); for(; i < (save->chunk_count - 1); i++) { save->chunks[i] = save->chunks[i+1]; } save->chunks[i] = nullptr; save->chunk_count--; return true; } } return false; }
BOOL DelChunk(SAVESTATE_t *save, const char *tag) { int i; for(i = 0; i < save->chunk_count; i++) { if (cmpTags(save->chunks[i]->tag, tag) == TRUE) { if (save->chunks[i]->data) free(save->chunks[i]->data); if (save->chunks[i]) free(save->chunks[i]); for(; i < (save->chunk_count - 1); i++) { save->chunks[i] = save->chunks[i+1]; } save->chunks[i] = NULL; save->chunk_count--; return TRUE; } } return FALSE; }