/* PRBool recv (out ACString data, in long maxLen); */ NS_IMETHODIMP sampUDPSocket::Recv(nsACString & data, PRInt32 maxLen, PRBool *_retval) { char *buffer = new char[maxLen]; int recvLen = m_UDPSock.Recv(buffer, maxLen, 100); if (recvLen == -1) { *_retval = false; data.Assign(""); } else { *_retval = true; if (recvLen == 0) data.Assign(""); else data.Assign(buffer, recvLen); } /* const char* charData; PRUint32 dataLen = NS_CStringGetData(data, &charData); */ delete[] buffer; *_retval = false; return NS_OK; }