Index: content/renderer/media/android/media_source_delegate.h |
diff --git a/content/renderer/media/android/media_source_delegate.h b/content/renderer/media/android/media_source_delegate.h |
index d33c9b77ebb695ca4c2c1b26d594f91a0beb2b5e..a60b7e32d583e777843eb23963367c684a4acfbe 100644 |
--- a/content/renderer/media/android/media_source_delegate.h |
+++ b/content/renderer/media/android/media_source_delegate.h |
@@ -182,15 +182,6 @@ class MediaSourceDelegate : public media::DemuxerHost { |
base::TimeDelta FindBufferedBrowserSeekTime_Locked( |
const base::TimeDelta& seek_time) const; |
- // Message loop for main renderer thread and corresponding weak pointer. |
- const scoped_refptr<base::MessageLoopProxy> main_loop_; |
- base::WeakPtrFactory<MediaSourceDelegate> main_weak_factory_; |
- base::WeakPtr<MediaSourceDelegate> main_weak_this_; |
- |
- // Message loop for media thread and corresponding weak pointer. |
- const scoped_refptr<base::MessageLoopProxy> media_loop_; |
- base::WeakPtrFactory<MediaSourceDelegate> media_weak_factory_; |
- |
RendererDemuxerAndroid* demuxer_client_; |
int demuxer_client_id_; |
@@ -240,6 +231,15 @@ class MediaSourceDelegate : public media::DemuxerHost { |
size_t access_unit_size_; |
+ // Message loop for main renderer and media threads. |
+ const scoped_refptr<base::MessageLoopProxy> main_loop_; |
+ const scoped_refptr<base::MessageLoopProxy> media_loop_; |
+ |
+ // NOTE: Weak pointers must be invalidated before all other member variables. |
+ base::WeakPtrFactory<MediaSourceDelegate> main_weak_factory_; |
+ base::WeakPtrFactory<MediaSourceDelegate> media_weak_factory_; |
+ base::WeakPtr<MediaSourceDelegate> main_weak_this_; |
+ |
DISALLOW_COPY_AND_ASSIGN(MediaSourceDelegate); |
}; |