1
0
Fork 0
mirror of https://github.com/Atmosphere-NX/Atmosphere.git synced 2024-12-19 00:42:06 +00:00

Loader: Fix argument passing.

This commit is contained in:
Michael Scire 2018-06-24 21:39:05 -06:00
parent 9687218fbc
commit bcf81fe957
6 changed files with 10 additions and 9 deletions

View file

@ -25,9 +25,9 @@ Result DebugMonitorService::dispatch(IpcParsedCommand &r, IpcCommand &out_c, u64
return rc;
}
std::tuple<Result> DebugMonitorService::add_title_to_launch_queue(u64 tid, InPointer<char> args) {
fprintf(stderr, "Add to launch queue: %p, %zX\n", args.pointer, args.num_elements);
return {LaunchQueue::add(tid, args.pointer, args.num_elements)};
std::tuple<Result> DebugMonitorService::add_title_to_launch_queue(u64 args_size, u64 tid, InPointer<char> args) {
fprintf(stderr, "Add to launch queue: %p, %zX\n", args.pointer, std::min(args_size, args.num_elements));
return {LaunchQueue::add(tid, args.pointer, std::min(args_size, args.num_elements))};
}
std::tuple<Result> DebugMonitorService::clear_launch_queue(u64 dat) {

View file

@ -24,7 +24,7 @@ class DebugMonitorService final : public IServiceObject {
private:
/* Actual commands. */
std::tuple<Result> add_title_to_launch_queue(u64 tid, InPointer<char> args);
std::tuple<Result> add_title_to_launch_queue(u64 args_size, u64 tid, InPointer<char> args);
std::tuple<Result> clear_launch_queue(u64 dat);
std::tuple<Result, u32> get_nso_info(u64 pid, OutPointerWithClientSize<Registration::NsoInfo> out);
};

View file

@ -141,6 +141,7 @@ Result NsoUtils::CalculateNsoLoadExtents(u32 addspace_type, u32 args_size, NsoLo
/* What the fuck? Where does 0x9007 come from? */
extents->args_size = (2 * args_size + 0x9007);
extents->args_size &= ~0xFFFULL;
extents->total_size += extents->args_size;
}
}
}

View file

@ -20,9 +20,9 @@ Result ShellService::dispatch(IpcParsedCommand &r, IpcCommand &out_c, u64 cmd_id
return rc;
}
std::tuple<Result> ShellService::add_title_to_launch_queue(u64 tid, InPointer<char> args) {
fprintf(stderr, "Add to launch queue: %p, %zX\n", args.pointer, args.num_elements);
return {LaunchQueue::add(tid, args.pointer, args.num_elements)};
std::tuple<Result> ShellService::add_title_to_launch_queue(u64 args_size, u64 tid, InPointer<char> args) {
fprintf(stderr, "Add to launch queue: %p, %zX\n", args.pointer, std::min(args_size, args.num_elements));
return {LaunchQueue::add(tid, args.pointer, std::min(args_size, args.num_elements))};
}
std::tuple<Result> ShellService::clear_launch_queue(u64 dat) {

View file

@ -21,6 +21,6 @@ class ShellService final : public IServiceObject {
private:
/* Actual commands. */
std::tuple<Result> add_title_to_launch_queue(u64 tid, InPointer<char> args);
std::tuple<Result> add_title_to_launch_queue(u64 args_size, u64 tid, InPointer<char> args);
std::tuple<Result> clear_launch_queue(u64 dat);
};