[haiku-commits] Re: haiku: hrev50274 - src/kits/network/libnetapi headers/private/net

  • From: Jessica Hamilton <jessica.l.hamilton@xxxxxxxxx>
  • To: "haiku-commits@xxxxxxxxxxxxx" <haiku-commits@xxxxxxxxxxxxx>
  • Date: Sun, 1 May 2016 10:46:13 +1200

+status_t
+BSocketMessenger::_ReadMessage(BMessage& _message, bigtime_t timeout)
+{
+       status_t error = fSocket.WaitForReadable(timeout);
+       if (error != B_OK)
+               return error;
+
+       ssize_t size = 0;
+       ssize_t readSize = fSocket.Read(&size, sizeof(ssize_t));
+       if (readSize < 0)
+               return readSize;
+       else if (readSize != sizeof(ssize_t))
+               return B_BAD_VALUE;

Shouldn't use else when returning in an if-block.

+       if (size <= 0)
+               return B_MISMATCHED_VALUES;
+
+       char* buffer = new(std::nothrow) char[size];
+       if (buffer == NULL)
+               return B_NO_MEMORY;
+
+       ArrayDeleter<char> bufferDeleter(buffer);
+       readSize = fSocket.Read(buffer, size);
+       if (readSize < 0)
+               return readSize;
+       else if (readSize != size)
+               return B_MISMATCHED_VALUES;

Same here :)

Other related posts: