mirror of
https://github.com/Lime3DS/Lime3DS.git
synced 2026-04-01 18:45:21 -06:00
fix: don't crash when getaddrinfo gets a small or empty buffer in soc:U
* those are valid in hw!
This commit is contained in:
parent
901f010913
commit
3066887ff4
@ -2078,7 +2078,7 @@ void SOC_U::GetAddrInfoImpl(Kernel::HLERequestContext& ctx) {
|
||||
std::size_t pos = 0;
|
||||
addrinfo* cur = out;
|
||||
while (cur != nullptr) {
|
||||
if (pos <= out_size - sizeof(CTRAddrInfo)) {
|
||||
if (sizeof(CTRAddrInfo) <= out_size - pos) {
|
||||
// According to 3dbrew, this function fills whatever it can and does not error even
|
||||
// if the buffer is not big enough. However the count returned is always correct.
|
||||
CTRAddrInfo ctr_addr = CTRAddrInfo::FromPlatform(*cur);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user