Browse Source

But of course, Windows uses 'int' while Linux uses 'socklen_t'

Ryan Loebs 10 years ago
parent
commit
64815a8b16
1 changed files with 4 additions and 0 deletions
  1. 4 0
      src/core/hle/service/soc_u.cpp

+ 4 - 0
src/core/hle/service/soc_u.cpp

@@ -729,7 +729,11 @@ static void GetSockOpt(Service::Interface* self) {
     u32 socket_handle = cmd_buffer[1];
     u32 socket_handle = cmd_buffer[1];
     u32 level = cmd_buffer[2];
     u32 level = cmd_buffer[2];
     u32 optname = cmd_buffer[3];
     u32 optname = cmd_buffer[3];
+#ifdef _WIN32
     int optlen = (int)cmd_buffer[4];
     int optlen = (int)cmd_buffer[4];
+#else
+    socklen_t optlen = (socklen_t)cmd_buffer[4];
+#endif
 
 
     // 0x100 = static buffer offset (bytes)
     // 0x100 = static buffer offset (bytes)
     // + 0x4 = 2nd pointer (u32) position
     // + 0x4 = 2nd pointer (u32) position