diff --git a/gfx/layers/LayerScope.cpp b/gfx/layers/LayerScope.cpp index 95669cf363b7..06d05c73358b 100644 --- a/gfx/layers/LayerScope.cpp +++ b/gfx/layers/LayerScope.cpp @@ -1477,8 +1477,10 @@ LayerScopeWebSocketManager::SocketHandler::WebSocketHandshake(nsTArray(digest), SHA1Sum::kHashSize); - Base64Encode(newString, res); - + rv = Base64Encode(newString, res); + if (NS_FAILED(rv)) { + return false; + } nsCString response("HTTP/1.1 101 Switching Protocols\r\n"); response.AppendLiteral("Upgrade: websocket\r\n"); response.AppendLiteral("Connection: Upgrade\r\n"); diff --git a/netwerk/system/linux/nsNotifyAddrListener_Linux.cpp b/netwerk/system/linux/nsNotifyAddrListener_Linux.cpp index 0c5315921ffc..c4141dc5be3b 100644 --- a/netwerk/system/linux/nsNotifyAddrListener_Linux.cpp +++ b/netwerk/system/linux/nsNotifyAddrListener_Linux.cpp @@ -180,7 +180,8 @@ void nsNotifyAddrListener::calculateNetworkId(void) sha1.finish(digest); nsCString newString(reinterpret_cast(digest), SHA1Sum::kHashSize); - Base64Encode(newString, output); + nsresult rv = Base64Encode(newString, output); + MOZ_RELEASE_ASSERT(NS_SUCCEEDED(rv)); LOG(("networkid: id %s\n", output.get())); if (mNetworkId != output) { // new id diff --git a/netwerk/system/mac/nsNetworkLinkService.mm b/netwerk/system/mac/nsNetworkLinkService.mm index f499f1e3aba9..2901cab935a5 100644 --- a/netwerk/system/mac/nsNetworkLinkService.mm +++ b/netwerk/system/mac/nsNetworkLinkService.mm @@ -270,7 +270,8 @@ void nsNetworkLinkService::calculateNetworkId(void) sha1.finish(digest); nsCString newString(reinterpret_cast(digest), SHA1Sum::kHashSize); - Base64Encode(newString, output); + nsresult rv = Base64Encode(newString, output); + MOZ_RELEASE_ASSERT(NS_SUCCEEDED(rv)); LOG(("networkid: id %s\n", output.get())); mNetworkId = output; } diff --git a/xpcom/io/Base64.h b/xpcom/io/Base64.h index e5c930d8fa19..e48b1fbbfd52 100644 --- a/xpcom/io/Base64.h +++ b/xpcom/io/Base64.h @@ -13,27 +13,27 @@ class nsIInputStream; namespace mozilla { -nsresult +MOZ_MUST_USE nsresult Base64EncodeInputStream(nsIInputStream* aInputStream, nsACString& aDest, uint32_t aCount, uint32_t aOffset = 0); -nsresult +MOZ_MUST_USE nsresult Base64EncodeInputStream(nsIInputStream* aInputStream, nsAString& aDest, uint32_t aCount, uint32_t aOffset = 0); -nsresult +MOZ_MUST_USE nsresult Base64Encode(const char* aBinary, uint32_t aBinaryLen, char** aBase64); -nsresult +MOZ_MUST_USE nsresult Base64Encode(const nsACString& aBinary, nsACString& aBase64); -nsresult +MOZ_MUST_USE nsresult Base64Encode(const nsAString& aBinary, nsAString& aBase64); -nsresult +MOZ_MUST_USE nsresult Base64Decode(const nsACString& aBase64, nsACString& aBinary); -nsresult +MOZ_MUST_USE nsresult Base64Decode(const nsAString& aBase64, nsAString& aBinary); enum class Base64URLEncodePaddingPolicy { @@ -46,7 +46,7 @@ enum class Base64URLEncodePaddingPolicy { * Aims to encode the data in constant time. The caller retains ownership * of |aBinary|. */ -nsresult +MOZ_MUST_USE nsresult Base64URLEncode(uint32_t aBinaryLen, const uint8_t* aBinary, Base64URLEncodePaddingPolicy aPaddingPolicy, nsACString& aBase64); @@ -60,7 +60,7 @@ enum class Base64URLDecodePaddingPolicy { /** * Decodes a Base64 URL-encoded |aBase64| into |aBinary|. */ -nsresult +MOZ_MUST_USE nsresult Base64URLDecode(const nsACString& aBase64, Base64URLDecodePaddingPolicy aPaddingPolicy, FallibleTArray& aBinary);