Atomically increment GainControl instance counter.
Fixes potential data race. TBR: saza@webrtc.org Bug: None Change-Id: I56477566b761884cdb04c20852b8a4f16c158369 Reviewed-on: https://webrtc-review.googlesource.com/94081 Reviewed-by: Sam Zackrisson <saza@webrtc.org> Commit-Queue: Alex Loiko <aleloi@webrtc.org> Cr-Commit-Position: refs/heads/master@{#24283}
This commit is contained in:
@ -12,6 +12,7 @@
|
||||
|
||||
#include "modules/audio_processing/include/audio_processing.h"
|
||||
#include "modules/audio_processing/logging/apm_data_dumper.h"
|
||||
#include "rtc_base/atomicops.h"
|
||||
#include "rtc_base/checks.h"
|
||||
#include "rtc_base/criticalsection.h"
|
||||
|
||||
@ -22,12 +23,11 @@ int GainControlForExperimentalAgc::instance_counter_ = 0;
|
||||
GainControlForExperimentalAgc::GainControlForExperimentalAgc(
|
||||
GainControl* gain_control,
|
||||
rtc::CriticalSection* crit_capture)
|
||||
: data_dumper_(new ApmDataDumper(instance_counter_)),
|
||||
: data_dumper_(
|
||||
new ApmDataDumper(rtc::AtomicOps::Increment(&instance_counter_))),
|
||||
real_gain_control_(gain_control),
|
||||
volume_(0),
|
||||
crit_capture_(crit_capture) {
|
||||
instance_counter_++;
|
||||
}
|
||||
crit_capture_(crit_capture) {}
|
||||
|
||||
GainControlForExperimentalAgc::~GainControlForExperimentalAgc() = default;
|
||||
|
||||
|
Reference in New Issue
Block a user