mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-08-06 08:09:19 +00:00
Only attempt a graceful shutdown when there's a STM hook
For Wii graceful shutdown to work, the emulated software has to open the STM event hook and install a hook. Without this, there is no way to inform them about the shutdown, so trying to do a graceful shutdown and requiring the use of the shutdown fallback (exiting a second time to force) is pointless.
This commit is contained in:
parent
48ff76d495
commit
a0a246bf3e
4 changed files with 16 additions and 2 deletions
|
@ -23,6 +23,8 @@
|
|||
#include "Core/Core.h"
|
||||
#include "Core/HW/Wiimote.h"
|
||||
#include "Core/Host.h"
|
||||
#include "Core/IPC_HLE/WII_IPC_HLE.h"
|
||||
#include "Core/IPC_HLE/WII_IPC_HLE_Device_stm.h"
|
||||
#include "Core/IPC_HLE/WII_IPC_HLE_Device_usb_bt_emu.h"
|
||||
#include "Core/IPC_HLE/WII_IPC_HLE_WiiMote.h"
|
||||
#include "Core/State.h"
|
||||
|
@ -232,7 +234,9 @@ class PlatformX11 : public Platform
|
|||
{
|
||||
if (s_shutdown_requested.TestAndClear())
|
||||
{
|
||||
if (!s_tried_graceful_shutdown.IsSet() && SConfig::GetInstance().bWii)
|
||||
const auto& stm = WII_IPC_HLE_Interface::GetDeviceByName("/dev/stm/eventhook");
|
||||
if (!s_tried_graceful_shutdown.IsSet() && stm &&
|
||||
std::static_pointer_cast<CWII_IPC_HLE_Device_stm_eventhook>(stm)->HasHookInstalled())
|
||||
{
|
||||
ProcessorInterface::PowerButton_Tap();
|
||||
s_tried_graceful_shutdown.Set();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue