Bug 1317946: allow sending of zero length buffers. r?schien
MozReview-Commit-ID: 4vNPewYScEF
--- a/netwerk/base/nsUDPSocket.cpp
+++ b/netwerk/base/nsUDPSocket.cpp
@@ -1183,18 +1183,21 @@ nsUDPSocket::AsyncListen(nsIUDPSocketLis
return PostEvent(this, &nsUDPSocket::OnMsgAttach);
}
NS_IMETHODIMP
nsUDPSocket::Send(const nsACString &aHost, uint16_t aPort,
const uint8_t *aData, uint32_t aDataLength,
uint32_t *_retval)
{
- NS_ENSURE_ARG(aData);
NS_ENSURE_ARG_POINTER(_retval);
+ if (!((aData && aDataLength > 0) ||
+ (!aData && !aDataLength))) {
+ return NS_ERROR_INVALID_ARG;
+ }
*_retval = 0;
FallibleTArray<uint8_t> fallibleArray;
if (!fallibleArray.InsertElementsAt(0, aData, aDataLength, fallible)) {
return NS_ERROR_OUT_OF_MEMORY;
}