summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar mailwl2016-11-02 21:48:10 +0300
committerGravatar mailwl2016-12-11 22:36:12 +0300
commite53cd12c42b8efb9d980e4c6aac66ea9ffb9f89e (patch)
tree2b3f2fc4e58a29e76a6130a70260b2fecfd0c6a7 /src
parentcitra-qt: Make constructors explicit where applicable (diff)
downloadyuzu-e53cd12c42b8efb9d980e4c6aac66ea9ffb9f89e.tar.gz
yuzu-e53cd12c42b8efb9d980e4c6aac66ea9ffb9f89e.tar.xz
yuzu-e53cd12c42b8efb9d980e4c6aac66ea9ffb9f89e.zip
APT::GetStartupArgument: force clear startup argument
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/apt/apt.cpp12
-rw-r--r--src/core/hle/service/apt/apt.h4
2 files changed, 11 insertions, 5 deletions
diff --git a/src/core/hle/service/apt/apt.cpp b/src/core/hle/service/apt/apt.cpp
index 31e5e07b2..615fe31ea 100644
--- a/src/core/hle/service/apt/apt.cpp
+++ b/src/core/hle/service/apt/apt.cpp
@@ -458,12 +458,16 @@ void GetStartupArgument(Service::Interface* self) {
458 return; 458 return;
459 } 459 }
460 460
461 LOG_WARNING(Service_APT, "(stubbed) called startup_argument_type=%u , parameter_size=0x%08x , " 461 u32 addr = cmd_buff[65];
462 "parameter_value=0x%08x", 462 if (addr && parameter_size) {
463 startup_argument_type, parameter_size, Memory::Read32(cmd_buff[41])); 463 Memory::ZeroBlock(addr, parameter_size);
464 }
465
466 LOG_WARNING(Service_APT, "(stubbed) called startup_argument_type=%u , parameter_size=0x%08x",
467 startup_argument_type, parameter_size);
464 468
465 cmd_buff[1] = RESULT_SUCCESS.raw; 469 cmd_buff[1] = RESULT_SUCCESS.raw;
466 cmd_buff[2] = (parameter_size > 0) ? 1 : 0; 470 cmd_buff[2] = 0;
467} 471}
468 472
469void CheckNew3DSApp(Service::Interface* self) { 473void CheckNew3DSApp(Service::Interface* self) {
diff --git a/src/core/hle/service/apt/apt.h b/src/core/hle/service/apt/apt.h
index 44dbd8757..e6a8be870 100644
--- a/src/core/hle/service/apt/apt.h
+++ b/src/core/hle/service/apt/apt.h
@@ -407,9 +407,11 @@ void CancelLibraryApplet(Service::Interface* self);
407 * Inputs: 407 * Inputs:
408 * 1 : Parameter Size (capped to 0x300) 408 * 1 : Parameter Size (capped to 0x300)
409 * 2 : StartupArgumentType 409 * 2 : StartupArgumentType
410 * 65 : Output buffer for startup argument
410 * Outputs: 411 * Outputs:
411 * 0 : Return header 412 * 0 : Return header
412 * 1 : u8, Exists (0 = does not exist, 1 = exists) 413 * 1 : Result of function, 0 on success, otherwise error code
414 * 2 : u8, Exists (0 = does not exist, 1 = exists)
413 */ 415 */
414void GetStartupArgument(Service::Interface* self); 416void GetStartupArgument(Service::Interface* self);
415 417