| Index: webrtc/media/base/videobroadcaster.h
 | 
| diff --git a/webrtc/media/base/videobroadcaster.h b/webrtc/media/base/videobroadcaster.h
 | 
| index 89c9f3dd49cbfbab58d11c6078c34606306d7ecb..b4227eaba6f314fe65f73492be7ae5d1b43ea4c8 100644
 | 
| --- a/webrtc/media/base/videobroadcaster.h
 | 
| +++ b/webrtc/media/base/videobroadcaster.h
 | 
| @@ -14,6 +14,7 @@
 | 
|  #include <utility>
 | 
|  #include <vector>
 | 
|  
 | 
| +#include "webrtc/base/criticalsection.h"
 | 
|  #include "webrtc/base/thread_checker.h"
 | 
|  #include "webrtc/media/base/videoframe.h"
 | 
|  #include "webrtc/media/base/videosinkinterface.h"
 | 
| @@ -21,6 +22,12 @@
 | 
|  
 | 
|  namespace rtc {
 | 
|  
 | 
| +// VideoBroadcaster broadcast video frames to sinks and combines
 | 
| +// VideoSinkWants from its sinks. It does that by implementing
 | 
| +// rtc::VideoSourceInterface and rtc::VideoSinkInterface.
 | 
| +// Sinks must be added and removed on one and only one thread.
 | 
| +// Video frames can be broadcasted on any thread. I.e VideoBroadcaster::OnFrame
 | 
| +// can be called on any thread.
 | 
|  class VideoBroadcaster : public VideoSourceInterface<cricket::VideoFrame>,
 | 
|                           public VideoSinkInterface<cricket::VideoFrame> {
 | 
|   public:
 | 
| @@ -46,13 +53,15 @@ class VideoBroadcaster : public VideoSourceInterface<cricket::VideoFrame>,
 | 
|      VideoSinkInterface<cricket::VideoFrame>* sink;
 | 
|      VideoSinkWants wants;
 | 
|    };
 | 
| -  SinkPair* FindSinkPair(const VideoSinkInterface<cricket::VideoFrame>* sink);
 | 
| -  void UpdateWants();
 | 
| +  SinkPair* FindSinkPair(const VideoSinkInterface<cricket::VideoFrame>* sink)
 | 
| +      EXCLUSIVE_LOCKS_REQUIRED(sinks_and_wants_lock_);
 | 
| +  void UpdateWants() EXCLUSIVE_LOCKS_REQUIRED(sinks_and_wants_lock_);
 | 
|  
 | 
|    ThreadChecker thread_checker_;
 | 
| +  rtc::CriticalSection sinks_and_wants_lock_;
 | 
|  
 | 
| -  VideoSinkWants current_wants_;
 | 
| -  std::vector<SinkPair> sinks_;
 | 
| +  VideoSinkWants current_wants_ GUARDED_BY(sinks_and_wants_lock_);
 | 
| +  std::vector<SinkPair> sinks_ GUARDED_BY(sinks_and_wants_lock_);
 | 
|  };
 | 
|  
 | 
|  }  // namespace rtc
 | 
| 
 |