Chromium Code Reviews| Index: media/cast/audio_sender/audio_sender.cc |
| diff --git a/media/cast/audio_sender/audio_sender.cc b/media/cast/audio_sender/audio_sender.cc |
| index bdf6b293f0cae0de30bbdfb297ef2e083e47f1b2..4ca58ea6411588a2ecb52d063d6853f7333a55be 100644 |
| --- a/media/cast/audio_sender/audio_sender.cc |
| +++ b/media/cast/audio_sender/audio_sender.cc |
| @@ -43,9 +43,11 @@ class LocalRtpSenderStatistics : public RtpSenderStatistics { |
| : transport_sender_(transport_sender), |
| frequency_(0), |
| sender_info_(), |
| - rtp_timestamp_(0) { |
| - transport_sender_->SubscribeAudioRtpStatsCallback(base::Bind( |
| - &LocalRtpSenderStatistics::StoreStatistics, base::Unretained(this))); |
| + rtp_timestamp_(0), |
| + weak_factory_(this) { |
| + transport_sender_->SubscribeAudioRtpStatsCallback( |
| + base::Bind(&LocalRtpSenderStatistics::StoreStatistics, |
| + weak_factory_.GetWeakPtr())); |
|
hubbe
2014/02/21 23:41:23
Here I can sort of understand the need for weak pt
|
| } |
| virtual void GetStatistics(const base::TimeTicks& now, |
| @@ -84,6 +86,8 @@ class LocalRtpSenderStatistics : public RtpSenderStatistics { |
| base::TimeTicks time_sent_; |
| uint32 rtp_timestamp_; |
| + base::WeakPtrFactory<LocalRtpSenderStatistics> weak_factory_; |
| + |
| DISALLOW_IMPLICIT_CONSTRUCTORS(LocalRtpSenderStatistics); |
| }; |