Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(314)

Side by Side Diff: content/renderer/media/rtc_video_decoder.h

Issue 193303002: WeakPtr destruction order cleanup: media edition. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_ 5 #ifndef CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_
6 #define CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_ 6 #define CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_
7 7
8 #include <deque> 8 #include <deque>
9 #include <list> 9 #include <list>
10 #include <map> 10 #include <map>
(...skipping 252 matching lines...) Expand 10 before | Expand all | Expand 10 after
263 std::deque<std::pair<SHMBuffer*, BufferData> > decode_buffers_; 263 std::deque<std::pair<SHMBuffer*, BufferData> > decode_buffers_;
264 264
265 // The id that will be given to the next bitstream buffer. Guarded by |lock_|. 265 // The id that will be given to the next bitstream buffer. Guarded by |lock_|.
266 int32 next_bitstream_buffer_id_; 266 int32 next_bitstream_buffer_id_;
267 267
268 // A buffer that has an id less than this should be dropped because Reset or 268 // A buffer that has an id less than this should be dropped because Reset or
269 // Release has been called. Guarded by |lock_|. 269 // Release has been called. Guarded by |lock_|.
270 int32 reset_bitstream_buffer_id_; 270 int32 reset_bitstream_buffer_id_;
271 271
272 // Factory used to populate |weak_this_|. Must be destroyed, or invalidated, 272 // Factory used to populate |weak_this_|. Must be destroyed, or invalidated,
273 // on |vda_loop_proxy_|. 273 // on |vda_loop_proxy_|. NOTE: This must always be last so it's invalidated
274 // before other member variables might be accessed.
274 base::WeakPtrFactory<RTCVideoDecoder> weak_factory_; 275 base::WeakPtrFactory<RTCVideoDecoder> weak_factory_;
275 276
276 DISALLOW_COPY_AND_ASSIGN(RTCVideoDecoder); 277 DISALLOW_COPY_AND_ASSIGN(RTCVideoDecoder);
277 }; 278 };
278 279
279 } // namespace content 280 } // namespace content
280 281
281 #endif // CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_ 282 #endif // CONTENT_RENDERER_MEDIA_RTC_VIDEO_DECODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698