diff --git a/sdk/android/src/jni/android_video_track_source.cc b/sdk/android/src/jni/android_video_track_source.cc index b9e056284d..f8455c91fa 100644 --- a/sdk/android/src/jni/android_video_track_source.cc +++ b/sdk/android/src/jni/android_video_track_source.cc @@ -52,7 +52,7 @@ AndroidVideoTrackSource::AndroidVideoTrackSource(rtc::Thread* signaling_thread, AndroidVideoTrackSource::~AndroidVideoTrackSource() = default; bool AndroidVideoTrackSource::is_screencast() const { - return is_screencast_; + return is_screencast_.load(); } absl::optional AndroidVideoTrackSource::needs_denoising() const { @@ -88,7 +88,7 @@ bool AndroidVideoTrackSource::remote() const { void AndroidVideoTrackSource::SetIsScreencast(JNIEnv* env, jboolean j_is_screencast) { - is_screencast_ = j_is_screencast; + is_screencast_.store(j_is_screencast); } ScopedJavaLocalRef AndroidVideoTrackSource::AdaptFrame( diff --git a/sdk/android/src/jni/android_video_track_source.h b/sdk/android/src/jni/android_video_track_source.h index 6fcf5cd6fc..378d380a11 100644 --- a/sdk/android/src/jni/android_video_track_source.h +++ b/sdk/android/src/jni/android_video_track_source.h @@ -89,7 +89,7 @@ class AndroidVideoTrackSource : public rtc::AdaptedVideoTrackSource { private: rtc::Thread* signaling_thread_; std::atomic state_; - bool is_screencast_; + std::atomic is_screencast_; rtc::TimestampAligner timestamp_aligner_; const bool align_timestamps_; };