cellMsgDialogAbort: don't call on_close and properly re-enable pads

This commit is contained in:
Megamouse 2019-06-01 09:46:45 +02:00
parent 8dafc8e542
commit 3f00b485a0
3 changed files with 7 additions and 5 deletions

View File

@ -389,7 +389,7 @@ error_code cellMsgDialogAbort()
{
if (auto dlg = manager->get<rsx::overlays::message_dialog>())
{
dlg->close();
dlg->close(false);
return CELL_OK;
}
}
@ -406,7 +406,9 @@ error_code cellMsgDialogAbort()
return CELL_SYSUTIL_ERROR_BUSY;
}
verify(HERE), fxm::remove<MsgDialogBase>();
verify(HERE), fxm::remove<MsgDialogBase>(); // this shouldn't call on_close
pad::SetIntercepted(false); // so we need to reenable the pads here
return CELL_OK;
}

View File

@ -305,7 +305,7 @@ namespace rsx
return 0;
}
void user_interface::close()
void user_interface::close(bool use_callback)
{
// Force unload
exit = true;
@ -322,7 +322,7 @@ namespace rsx
pad::SetIntercepted(false);
if (on_close)
if (on_close && use_callback)
on_close(return_code);
}

View File

@ -89,7 +89,7 @@ namespace rsx
close();
}
void close();
void close(bool use_callback = true);
s32 run_input_loop();
};