mirror of
https://github.com/hrydgard/ppsspp.git
synced 2026-10-24 11:49:05 +02:00
Correct error code for reads into a bad pointer.
Per tests this is generally -1.
This commit is contained in:
1 parent
2a4cbb7171
commit
d7ba8f7312
1 file changed
+7
-4
+7
-4
@@ -764,10 +764,13 @@ bool __IoRead(int &result, int id, u32 data_addr, int size) {
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
ERROR_LOG_REPORT(SCEIO, "sceIoRead Reading into bad pointer %08x", data_addr);
|
||||
// TODO: Returning 0 because it wasn't being sign-extended in async result before.
|
||||
// What should this do?
|
||||
result = 0;
|
||||
if (size != 0) {
|
||||
// TODO: For some combinations of bad pointer + size, SCE_KERNEL_ERROR_ILLEGAL_ADDR.
|
||||
// Seems like only for kernel RAM. For most cases, it really is -1.
|
||||
result = -1;
|
||||
} else {
|
||||
result = 0;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
|
||||
Reference in new issue
Block a user