From f31233b822422ff18efa91f3e2a2af1082109eef Mon Sep 17 00:00:00 2001 From: Nekotekina Date: Fri, 22 Nov 2019 18:56:40 +0300 Subject: [PATCH] sys_net: don't report SYS_NET_EWOULDBLOCK in blocking syscalls --- rpcs3/Emu/Cell/lv2/sys_net.cpp | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/rpcs3/Emu/Cell/lv2/sys_net.cpp b/rpcs3/Emu/Cell/lv2/sys_net.cpp index a0461ddee1..b617e58a59 100644 --- a/rpcs3/Emu/Cell/lv2/sys_net.cpp +++ b/rpcs3/Emu/Cell/lv2/sys_net.cpp @@ -401,6 +401,11 @@ error_code sys_net_bnet_accept(ppu_thread& ppu, s32 s, vm::ptr if (!sock.ret && result) { + if (result == SYS_NET_EWOULDBLOCK) + { + return not_an_error(-result); + } + return -sys_net_error{result}; } @@ -628,6 +633,11 @@ error_code sys_net_bnet_connect(ppu_thread& ppu, s32 s, vm::ptr buf, u32 if (!sock.ret && result) { + if (result == SYS_NET_EWOULDBLOCK) + { + return not_an_error(-result); + } + return -result; } @@ -1232,6 +1247,11 @@ error_code sys_net_bnet_sendto(ppu_thread& ppu, s32 s, vm::cptr buf, u32 l if (!sock.ret && result) { + if (result == SYS_NET_EWOULDBLOCK) + { + return not_an_error(-result); + } + return -result; }