I420BufferPool: Replace SequencedTaskChecker with RaceChecker

SequencedTaskChecker does not work with the iOS dispatch queue. See bug
for more info.

BUG=webrtc:6367
R=perkj@webrtc.org

Review URL: https://codereview.webrtc.org/2341113005 .

Cr-Commit-Position: refs/heads/master@{#14272}
diff --git a/webrtc/common_video/i420_buffer_pool.cc b/webrtc/common_video/i420_buffer_pool.cc
index 7110639..76a53c5 100644
--- a/webrtc/common_video/i420_buffer_pool.cc
+++ b/webrtc/common_video/i420_buffer_pool.cc
@@ -15,18 +15,15 @@
 namespace webrtc {
 
 I420BufferPool::I420BufferPool(bool zero_initialize)
-    : zero_initialize_(zero_initialize) {
-  sequenced_checker_.Detach();
-}
+    : zero_initialize_(zero_initialize) {}
 
 void I420BufferPool::Release() {
-  sequenced_checker_.Detach();
   buffers_.clear();
 }
 
 rtc::scoped_refptr<I420Buffer> I420BufferPool::CreateBuffer(int width,
                                                             int height) {
-  RTC_DCHECK(sequenced_checker_.CalledSequentially());
+  RTC_DCHECK_RUNS_SERIALIZED(&race_checker_);
   // Release buffers with wrong resolution.
   for (auto it = buffers_.begin(); it != buffers_.end();) {
     if ((*it)->width() != width || (*it)->height() != height)
diff --git a/webrtc/common_video/include/i420_buffer_pool.h b/webrtc/common_video/include/i420_buffer_pool.h
index 5c19f3f..5aabd75 100644
--- a/webrtc/common_video/include/i420_buffer_pool.h
+++ b/webrtc/common_video/include/i420_buffer_pool.h
@@ -13,7 +13,7 @@
 
 #include <list>
 
-#include "webrtc/base/sequenced_task_checker.h"
+#include "webrtc/base/race_checker.h"
 #include "webrtc/common_video/include/video_frame_buffer.h"
 
 namespace webrtc {
@@ -40,7 +40,7 @@
   // needed by the pool to check exclusive access.
   using PooledI420Buffer = rtc::RefCountedObject<I420Buffer>;
 
-  rtc::SequencedTaskChecker sequenced_checker_;
+  rtc::RaceChecker race_checker_;
   std::list<rtc::scoped_refptr<PooledI420Buffer>> buffers_;
   // If true, newly allocated buffers are zero-initialized. Note that recycled
   // buffers are not zero'd before reuse. This is required of buffers used by