citra/src/core/hle
Pengfei Zhu de3d7cf49f
kernel/thread: Change owner_process to std::weak_ptr (#5325)
* kernel/thread: Change owner_process to std::weak_ptr

Previously this leaked almost all kernel objects. In short, Threads own Processes which own HandleTables which own maps of Objects which include Threads.

Changing this to weak_ptr at least got the camera interfaces to destruct properly. Did not really check the other objects though, and I think there are probably more leaks.

* hle/kernel: Lock certain objects while deserializing

When deserializing other kernel objects, these objects (`MemoryRegion`s and `VMManager`s) can possibly get modified. To avoid inconsistent state caused by destructor side-effects, we may as well simply lock them until loading is fully completed.

* Fix silly typo

Somehow this didn't break?!
2020-11-15 12:59:45 +01:00
..
applets applets/swkbd: Properly handle button_text 2020-05-31 09:41:30 +08:00
kernel kernel/thread: Change owner_process to std::weak_ptr (#5325) 2020-11-15 12:59:45 +01:00
service Minor frontend fixes to savestates (#5430) 2020-09-03 00:04:23 +02:00
ipc.h
ipc_helpers.h ipc_helpers: Make PushStaticBuffer take std::vector by value 2020-04-18 19:17:11 -04:00
lock.cpp
lock.h
result.h
romfs.cpp
romfs.h