80
« Last post by h1262216 on November 20, 2022, 01:58:21 PM »
Thanks for the report, and the thorough investigation.
I've found the source of the second bug: Before, the list of traits that a Therapy can remove was set within C++, so the provided `const char*` would be valid for the entire program lifetime. Now it is loaded from an xml file, so it is no longer save to keep the char pointer. Switching to std::string for the `sRemoveTrait` struct solves the problem.
The reason it crashed in the detail screen is that is was trying to generate the scores for the different "jobs" that a girl can take, and thus checking these traits, with whatever bogus ended up at that memory location.
The cleanup of the code is certainly an ongoing process. There are still some parts that I haven't really gotten to (items, gold, customers, rivals), and for some of those that I have changed, by now I'd like to redo some things. The usual story of software development, I guess.