mirror of
https://github.com/RPCSX/rpcsx.git
synced 2025-12-06 07:12:14 +01:00
This used to crash so it was removed. However I think this is a cruicial feature. This is the only way to observe the stack-frames, registers and disasm around the PC in a user friendly way. The reason this caused crashes was that we got a reference to a std::vector and iterated over it in one thread while another thread could modify it (and thereby invalidating the iterators). The way I "fixed" it is to just copy the `std::vector<std::shared_ptr<...>>` and iterate over the copy. This obviously has some overhead (locking the shared_ptr counters and incrementing them). It also allows entities other than the Thread manager to keep the Thread objects frome being deleted but that should not be a problem. |
||
|---|---|---|
| .. | ||
| cmake_modules | ||
| Crypto | ||
| Emu | ||
| Gui | ||
| Loader | ||
| rpcs3qt | ||
| CMakeLists.txt | ||
| define_new_memleakdetect.h | ||
| emucore.vcxproj | ||
| emucore.vcxproj.filters | ||
| emucore.vcxproj.user | ||
| git-version.cmake | ||
| Ini.cpp | ||
| Ini.h | ||
| restore_new.h | ||
| rpcs3.cpp | ||
| rpcs3.h | ||
| rpcs3.rc | ||
| rpcs3.vcxproj | ||
| rpcs3.vcxproj.filters | ||
| rpcs3.vcxproj.user | ||
| stdafx.cpp | ||
| stdafx.h | ||
| stdafx_gui.cpp | ||
| stdafx_gui.h | ||