Services created with the ServiceFramework base class install themselves as HleHandlers with an owning shared_ptr in the ServerPort ServiceFrameworkBase::port member variable, creating a cyclic ownership between ServiceFrameworkBase and the ServerPort, preventing deletion of the service objects. Fix that by removing the ServiceFrameworkBase::port member because that was only used to detect multiple attempts at installing a port. Instead store a flag if the port was already installed to achieve the same functionality. |
||
|---|---|---|
| .. | ||
| kernel | ||
| service | ||
| ipc.h | ||
| ipc_helpers.h | ||
| lock.cpp | ||
| lock.h | ||
| result.h | ||