Index: webrtc/call/transport_adapter.cc |
diff --git a/webrtc/call/transport_adapter.cc b/webrtc/call/transport_adapter.cc |
index 733f3dba8f8973c5cbacf0d6f949c47bafb766d5..f7c6368601181af8e3aa6884abce827c95d58c5b 100644 |
--- a/webrtc/call/transport_adapter.cc |
+++ b/webrtc/call/transport_adapter.cc |
@@ -10,6 +10,7 @@ |
#include "webrtc/call/transport_adapter.h" |
+#include "webrtc/base/atomicops.h" |
#include "webrtc/base/checks.h" |
namespace webrtc { |
@@ -21,7 +22,7 @@ TransportAdapter::TransportAdapter(newapi::Transport* transport) |
} |
int TransportAdapter::SendPacket(const void* packet, size_t length) { |
- if (enabled_.Value() == 0) |
+ if (rtc::AtomicOps::AcquireLoad(&enabled_) == 0) |
return false; |
bool success = transport_->SendRtp(static_cast<const uint8_t*>(packet), |
@@ -30,7 +31,7 @@ int TransportAdapter::SendPacket(const void* packet, size_t length) { |
} |
int TransportAdapter::SendRTCPPacket(const void* packet, size_t length) { |
- if (enabled_.Value() == 0) |
+ if (rtc::AtomicOps::AcquireLoad(&enabled_) == 0) |
return false; |
bool success = transport_->SendRtcp(static_cast<const uint8_t*>(packet), |
@@ -39,12 +40,12 @@ int TransportAdapter::SendRTCPPacket(const void* packet, size_t length) { |
} |
void TransportAdapter::Enable() { |
- // If this exchange fails it means enabled_ was already true, no need to |
- // check result and iterate. |
- enabled_.CompareExchange(1, 0); |
+ rtc::AtomicOps::ReleaseStore(&enabled_, 1); |
} |
-void TransportAdapter::Disable() { enabled_.CompareExchange(0, 1); } |
+void TransportAdapter::Disable() { |
+ rtc::AtomicOps::ReleaseStore(&enabled_, 0); |
+} |
} // namespace internal |
} // namespace webrtc |