Index: media/filters/decrypting_video_decoder.h |
diff --git a/media/filters/decrypting_video_decoder.h b/media/filters/decrypting_video_decoder.h |
index f0fd27ac757be241a48513a2947f7fcca5c6217a..35bcba9592436dae69a3b43186dff27a3de1ca29 100644 |
--- a/media/filters/decrypting_video_decoder.h |
+++ b/media/filters/decrypting_video_decoder.h |
@@ -79,8 +79,6 @@ class MEDIA_EXPORT DecryptingVideoDecoder : public VideoDecoder { |
void DoStop(); |
scoped_refptr<base::SingleThreadTaskRunner> task_runner_; |
- base::WeakPtrFactory<DecryptingVideoDecoder> weak_factory_; |
- base::WeakPtr<DecryptingVideoDecoder> weak_this_; |
State state_; |
@@ -109,6 +107,11 @@ class MEDIA_EXPORT DecryptingVideoDecoder : public VideoDecoder { |
// matching DecryptCB call (in DoDeliverFrame()). |
uint32 trace_id_; |
+ // NOTE: These must always be last so they're invalidated before other member |
+ // variables might be accessed. |
+ base::WeakPtr<DecryptingVideoDecoder> weak_this_; |
Ami GONE FROM CHROMIUM
2014/03/10 22:02:08
ditto
|
+ base::WeakPtrFactory<DecryptingVideoDecoder> weak_factory_; |
+ |
DISALLOW_COPY_AND_ASSIGN(DecryptingVideoDecoder); |
}; |