aoc_u: Fix edge case with DLC that causes breaks
In some games (Splatoon 2 and Splatoon 2 Splatfest World Premiere, notably), pass offset=0 and count=2047 into the ListAddOnContent method which should return all DLCs for the current title. The (presumably) intended behavior is to successfully return a empty array but because of a < v. <= in an if statement, a failure error code was returned causing these games to svcBreak. This fixes that if statement.
This commit is contained in:
parent
bd14f397ce
commit
9aaf1c0df8
|
@ -84,7 +84,7 @@ void AOC_U::ListAddOnContent(Kernel::HLERequestContext& ctx) {
|
||||||
out.push_back(static_cast<u32>(add_on_content[i] & 0x7FF));
|
out.push_back(static_cast<u32>(add_on_content[i] & 0x7FF));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (out.size() <= offset) {
|
if (out.size() < offset) {
|
||||||
IPC::ResponseBuilder rb{ctx, 2};
|
IPC::ResponseBuilder rb{ctx, 2};
|
||||||
// TODO(DarkLordZach): Find the correct error code.
|
// TODO(DarkLordZach): Find the correct error code.
|
||||||
rb.Push(ResultCode(-1));
|
rb.Push(ResultCode(-1));
|
||||||
|
|
Reference in New Issue