Index: media/filters/decrypting_demuxer_stream.h |
diff --git a/media/filters/decrypting_demuxer_stream.h b/media/filters/decrypting_demuxer_stream.h |
index aa9e897f226b0194492b3583cee03a5b333a1a21..6b29a21f5a1cd4b9dbe1c65986a193d90d97b453 100644 |
--- a/media/filters/decrypting_demuxer_stream.h |
+++ b/media/filters/decrypting_demuxer_stream.h |
@@ -99,8 +99,6 @@ class MEDIA_EXPORT DecryptingDemuxerStream : public DemuxerStream { |
void InitializeDecoderConfig(); |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
- base::WeakPtrFactory<DecryptingDemuxerStream> weak_factory_; |
- base::WeakPtr<DecryptingDemuxerStream> weak_this_; |
State state_; |
@@ -128,6 +126,10 @@ class MEDIA_EXPORT DecryptingDemuxerStream : public DemuxerStream { |
// decrypting again in case the newly added key is the correct decryption key. |
bool key_added_while_decrypt_pending_; |
+ // NOTE: Weak pointers must be invalidated before all other member variables. |
+ base::WeakPtrFactory<DecryptingDemuxerStream> weak_factory_; |
+ base::WeakPtr<DecryptingDemuxerStream> weak_this_; |
+ |
DISALLOW_COPY_AND_ASSIGN(DecryptingDemuxerStream); |
}; |