kernel/svc: Correct output parameter for svcGetProcessId

svcGetProcessId's out parameter is a pointer to a 64-bit value, not a
32-bit one.
This commit is contained in:
Lioncash
2018-12-18 22:30:53 -05:00
parent 9b3a38e3d3
commit 43e1189688
2 changed files with 10 additions and 2 deletions

View File

@ -73,7 +73,15 @@ void SvcWrap() {
template <ResultCode func(u32*, u64)>
void SvcWrap() {
u32 param_1 = 0;
u32 retval = func(&param_1, Param(1)).raw;
const u32 retval = func(&param_1, Param(1)).raw;
Core::CurrentArmInterface().SetReg(1, param_1);
FuncReturn(retval);
}
template <ResultCode func(u64*, u32)>
void SvcWrap() {
u64 param_1 = 0;
const u32 retval = func(&param_1, static_cast<u32>(Param(1))).raw;
Core::CurrentArmInterface().SetReg(1, param_1);
FuncReturn(retval);
}