So I spent some time with Valgrind, there are some small memory leaks:
1) parse_buy_flag() (store.c) makes a string "t" and never frees it
2) cleanup_artifact() (init.c) frees brands and slays of artefacts, but doesnt free curses
3) cleanup_player() (player.c) frees player->obj_k, but doesn't free its curses, brands and slays
Also, I'm curious if anyone makes use of the functionality of mem_alloc() and co. at this point? As far as I can tell, its main reason to exist is to make Valgrind produce some additional "potentially lost" warnings
1) parse_buy_flag() (store.c) makes a string "t" and never frees it
2) cleanup_artifact() (init.c) frees brands and slays of artefacts, but doesnt free curses
3) cleanup_player() (player.c) frees player->obj_k, but doesn't free its curses, brands and slays
Also, I'm curious if anyone makes use of the functionality of mem_alloc() and co. at this point? As far as I can tell, its main reason to exist is to make Valgrind produce some additional "potentially lost" warnings
Comment