fix(memory): Fixed memory leaks at shutdown#6667
Conversation
|
There's already a fix for the crash at least, but that is currently on a different branch due to LUS development pipelines being in a bad place. Kenix3/libultraship#1103 Said Pipelines mean there's a good chance the LUS PR will not be accepted for a while. |
24b3e3c to
d3dd44b
Compare
f1f523b to
da946aa
Compare
|
I update this PR
So this PR does NOT depend on any version of LUS anymore, it can be merged as is. |
|
Why don't you think pinning port-maintenance is the answer? |
|
While I am not a fan of using But, LUS is not built that way at all, it has Also, I am more interrested in #6668 landing, I think it's a HUGE audio quality improvement. I am done, just have to prepare a video or something so that people understand (aka. hear) the difference, it's actually amazing. A big chunk of the work was done in LUS itself, and it started from main. It's already tedious to have to pin my branch on LUS, I know have to also bring the changes from port-maintenance, and it's very annoying. If you tell me the plan is to start a branch in LUS and use that one in shipwright, then I'll target that branch with my PRs in LUS (probably will end up having two PRs, for other games too). That can be a fine answer. I just don't know the plan right now, and I personally think we should stick on |
ee5e9b4 to
9f2b1b3
Compare
|
I ended up removing the revert from here... so this is just memory management cleanup now. |
|
Sorry, missed the last comment until just now. The changes louis made for Context on port-maintenance is how we're planning on going with most of the rest of the shared_ptrs throughout the codebase, it was just a first step. Though, whether to use unique_ptr or raw pointers is something that could still be discussed, I think. |
9f2b1b3 to
247df5b
Compare
|
OK, thanks, I still think this PR worth merging IMO, even if it's not a matter of crashing at runtime anymore, releasing the |
247df5b to
1c3eedc
Compare
|
Tick the box to add this pull request to the merge queue (same as
|
Restores the guard from the original shutdown-crash fix that was dropped when the branch was recreated: on the first OTRControllerCallback the window is created in the if-branch, so the old else-if could dereference a null controllerConfigWindow. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Was not cleaning up the context properly, leaving things initialized while other were getting deleted. I did not run valgrind or such, so there are probably other memory leak.
Build Artifacts