Преглед на файлове

fix ENET_SOCKOPT_NONBLOCK when value is 0

Lee Salzman преди 9 години
родител
ревизия
4d2694d74e
променени са 1 файла, в които са добавени 1 реда и са изтрити 1 реда
  1. 1 1
      unix.c

+ 1 - 1
unix.c

@@ -246,7 +246,7 @@ enet_socket_set_option (ENetSocket socket, ENetSocketOption option, int value)
     {
         case ENET_SOCKOPT_NONBLOCK:
 #ifdef HAS_FCNTL
-            result = fcntl (socket, F_SETFL, O_NONBLOCK | fcntl (socket, F_GETFL));
+            result = fcntl (socket, F_SETFL, (value ? O_NONBLOCK : 0) | (fcntl (socket, F_GETFL) & ~O_NONBLOCK));
 #else
             result = ioctl (socket, FIONBIO, & value);
 #endif