So without any modifications, the list of savegames available is populated from M:\vs\Repos\OutpostHD\data\savegames
However the saving of files is trying to save them to C:\Users\trent\AppData\Roaming\LairWorks\OutpostHD\savegames
The reason it fails is because there is no such folder. The savegames folder sits within a "data" folder in the OutpostHD folder
To get it to work, I had to change the savegame location in strings.h
const std::string SAVE_GAME_PATH = "data/savegames/";
Strangely, this changes both where the files save to, and are loaded from. I mean, it's what you'd expect, but operates differently to how it did without the change.
I then reverted my changes and tried what you said by just deleting savefiles, but that didn't change anything.
With regards to the game just closing after a failed save, the main thread (main.cpp) catches the exception, throws a doNonFatalErroMessage, and then continues on to execute SDL_Quit() which I guess quits everything.
Now I can save, I can try and reproduce the negative capacity stuff.