[am] terminate app, if caller applet is available (#3486)
Changes ExitProcessAndReturn to terminate process if caller is available (e.g. a parent applet) and start program_index 0 if not. Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3486 Reviewed-by: DraVee <dravee@eden-emu.dev> Reviewed-by: crueter <crueter@eden-emu.dev> Co-authored-by: Maufeat <sahyno1996@gmail.com> Co-committed-by: Maufeat <sahyno1996@gmail.com>
This commit is contained in:
parent
75fda70db2
commit
16f2564478
|
|
@ -181,12 +181,12 @@ Result ILibraryAppletSelfAccessor::ExitProcessAndReturn() {
|
||||||
LOG_INFO(Service_AM, "called");
|
LOG_INFO(Service_AM, "called");
|
||||||
|
|
||||||
if (const auto caller_applet = m_applet->caller_applet.lock(); caller_applet) {
|
if (const auto caller_applet = m_applet->caller_applet.lock(); caller_applet) {
|
||||||
system.GetUserChannel() = caller_applet->user_channel_launch_parameter;
|
m_applet->process->Terminate();
|
||||||
} else {
|
} else {
|
||||||
system.GetUserChannel() = m_applet->user_channel_launch_parameter;
|
system.GetUserChannel() = m_applet->user_channel_launch_parameter;
|
||||||
|
system.ExecuteProgram(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
system.ExecuteProgram(0);
|
|
||||||
R_SUCCEED();
|
R_SUCCEED();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue