Loading netwerk/protocol/websocket/BaseWebSocketChannel.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,19 @@ BaseWebSocketChannel::BaseWebSocketChannel() mSerial = (processBits << kWebSocketIDWebSocketBits) | webSocketBits; } BaseWebSocketChannel::~BaseWebSocketChannel() { NS_ReleaseOnMainThread("BaseWebSocketChannel::mLoadGroup", mLoadGroup.forget()); NS_ReleaseOnMainThread("BaseWebSocketChannel::mLoadInfo", mLoadInfo.forget()); nsCOMPtr<nsIEventTarget> target; { auto lock = mTargetThread.Lock(); target.swap(*lock); } NS_ReleaseOnMainThread("BaseWebSocketChannel::mTargetThread", target.forget()); } //----------------------------------------------------------------------------- // BaseWebSocketChannel::nsIWebSocketChannel //----------------------------------------------------------------------------- Loading netwerk/protocol/websocket/BaseWebSocketChannel.h +3 −1 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ class BaseWebSocketChannel : public nsIWebSocketChannel, }; protected: virtual ~BaseWebSocketChannel(); nsCOMPtr<nsIURI> mOriginalURI; nsCOMPtr<nsIURI> mURI; RefPtr<ListenerAndContextContainer> mListenerMT; Loading @@ -104,7 +105,8 @@ class BaseWebSocketChannel : public nsIWebSocketChannel, nsCOMPtr<nsITransportProvider> mServerTransportProvider; // Used to ensure atomicity of mTargetThread. // Set before AsyncOpen via RetargetDeliveryTo or in AsyncOpen, never changed after AsyncOpen // Set before AsyncOpen via RetargetDeliveryTo or in AsyncOpen, never changed // after AsyncOpen DataMutex<nsCOMPtr<nsIEventTarget>> mTargetThread{ "BaseWebSocketChannel::EventTargetMutex"}; Loading netwerk/protocol/websocket/WebSocketChannel.cpp +0 −7 Original line number Diff line number Diff line Loading @@ -1225,14 +1225,7 @@ WebSocketChannel::~WebSocketChannel() { mListenerMT = nullptr; NS_ReleaseOnMainThread("WebSocketChannel::mLoadGroup", mLoadGroup.forget()); NS_ReleaseOnMainThread("WebSocketChannel::mService", mService.forget()); nsCOMPtr<nsIEventTarget> target; { auto lock = mTargetThread.Lock(); target.swap(*lock); } NS_ReleaseOnMainThread("WebSocketChannel::mTargetThread", target.forget()); } NS_IMETHODIMP Loading netwerk/protocol/websocket/WebSocketChannel.h +1 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ class WebSocketChannel : public BaseWebSocketChannel, const static uint8_t kPayloadLengthBitsMask = 0x7F; protected: virtual ~WebSocketChannel(); ~WebSocketChannel() override; private: friend class OutboundEnqueuer; Loading Loading
netwerk/protocol/websocket/BaseWebSocketChannel.cpp +13 −0 Original line number Diff line number Diff line Loading @@ -64,6 +64,19 @@ BaseWebSocketChannel::BaseWebSocketChannel() mSerial = (processBits << kWebSocketIDWebSocketBits) | webSocketBits; } BaseWebSocketChannel::~BaseWebSocketChannel() { NS_ReleaseOnMainThread("BaseWebSocketChannel::mLoadGroup", mLoadGroup.forget()); NS_ReleaseOnMainThread("BaseWebSocketChannel::mLoadInfo", mLoadInfo.forget()); nsCOMPtr<nsIEventTarget> target; { auto lock = mTargetThread.Lock(); target.swap(*lock); } NS_ReleaseOnMainThread("BaseWebSocketChannel::mTargetThread", target.forget()); } //----------------------------------------------------------------------------- // BaseWebSocketChannel::nsIWebSocketChannel //----------------------------------------------------------------------------- Loading
netwerk/protocol/websocket/BaseWebSocketChannel.h +3 −1 Original line number Diff line number Diff line Loading @@ -95,6 +95,7 @@ class BaseWebSocketChannel : public nsIWebSocketChannel, }; protected: virtual ~BaseWebSocketChannel(); nsCOMPtr<nsIURI> mOriginalURI; nsCOMPtr<nsIURI> mURI; RefPtr<ListenerAndContextContainer> mListenerMT; Loading @@ -104,7 +105,8 @@ class BaseWebSocketChannel : public nsIWebSocketChannel, nsCOMPtr<nsITransportProvider> mServerTransportProvider; // Used to ensure atomicity of mTargetThread. // Set before AsyncOpen via RetargetDeliveryTo or in AsyncOpen, never changed after AsyncOpen // Set before AsyncOpen via RetargetDeliveryTo or in AsyncOpen, never changed // after AsyncOpen DataMutex<nsCOMPtr<nsIEventTarget>> mTargetThread{ "BaseWebSocketChannel::EventTargetMutex"}; Loading
netwerk/protocol/websocket/WebSocketChannel.cpp +0 −7 Original line number Diff line number Diff line Loading @@ -1225,14 +1225,7 @@ WebSocketChannel::~WebSocketChannel() { mListenerMT = nullptr; NS_ReleaseOnMainThread("WebSocketChannel::mLoadGroup", mLoadGroup.forget()); NS_ReleaseOnMainThread("WebSocketChannel::mService", mService.forget()); nsCOMPtr<nsIEventTarget> target; { auto lock = mTargetThread.Lock(); target.swap(*lock); } NS_ReleaseOnMainThread("WebSocketChannel::mTargetThread", target.forget()); } NS_IMETHODIMP Loading
netwerk/protocol/websocket/WebSocketChannel.h +1 −1 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ class WebSocketChannel : public BaseWebSocketChannel, const static uint8_t kPayloadLengthBitsMask = 0x7F; protected: virtual ~WebSocketChannel(); ~WebSocketChannel() override; private: friend class OutboundEnqueuer; Loading