SourMesen / Mesen-S

Mesen-S is a cross-platform (Windows & Linux) SNES emulator built in C++ and C#
GNU General Public License v3.0
415 stars 102 forks source link

Reloading ROM when debugger is open freezes Mesen-S #119

Closed undisbeliever closed 4 years ago

undisbeliever commented 4 years ago

Selecting "Reload ROM" when the CPU debugger window is open freezes Mesen-S.

Closing the debugger window before reloading the ROM does not freeze.

When frozen, the only way to exit Mesen-S is to kill it with SIGKILL.

System:
Latest ArchLinux x86_64
Mono JIT compiler version 6.4.0
clang version 10.0.0


A git bisect shows this bug was introduced in commit 9e39c65 (the parent commit 9950a4d is good).

Reverting the bad commit on the master branch does not fix the bug. I've been playing with the code for half an hour and have been unable to fix it.

SourMesen commented 4 years ago

Thanks for the report! I actually noticed this a couple of days ago and the changes were buried in my current (local) changes. I did some more testing and noticed some additional issues with my fix, those + the original freeze should be fixed as of a402a2c5695252ab7bdc3fe4e77e39459d531ad7. Let me know if you still get freezes (or crashes) with this.

FYI, the reason why reverting the commit didn't fix the bug is probably that the change done in 6d9dc998145a7421c19e9d3bc9a2fd215bec10f3 also caused a similar problem.

undisbeliever commented 4 years ago

Thanks for the quick response. Mesen-S is no longer freezing on my system.

PS: I would also like to thank-you for adding bass symbol support to Mesen-S.

SourMesen commented 4 years ago

No problem! Let me know if there's anything else you need.