diff options
author | perkj <perkj@webrtc.org> | 2015-11-30 22:15:45 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2015-12-01 06:15:53 +0000 |
commit | 14f4144a82558ec4da2d4962ef02b23f44967b6a (patch) | |
tree | ec00a9cea4e74167221d7690b79b00ef24998cf0 /webrtc/common_video | |
parent | ee69ed505b6ba4a9dbb47cc927aaf220d661fa06 (diff) | |
download | webrtc-14f4144a82558ec4da2d4962ef02b23f44967b6a.tar.gz |
Add helper KeepRefUntilDone.
The callback keeps a reference to an object until the callback goes out of scope.
Review URL: https://codereview.webrtc.org/1487493002
Cr-Commit-Position: refs/heads/master@{#10847}
Diffstat (limited to 'webrtc/common_video')
-rw-r--r-- | webrtc/common_video/video_frame_buffer.cc | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/webrtc/common_video/video_frame_buffer.cc b/webrtc/common_video/video_frame_buffer.cc index fff90defbd..492bc49587 100644 --- a/webrtc/common_video/video_frame_buffer.cc +++ b/webrtc/common_video/video_frame_buffer.cc @@ -10,19 +10,13 @@ #include "webrtc/common_video/include/video_frame_buffer.h" -#include "webrtc/base/bind.h" #include "webrtc/base/checks.h" +#include "webrtc/base/keep_ref_until_done.h" // Aligning pointer to 64 bytes for improved performance, e.g. use SIMD. static const int kBufferAlignment = 64; namespace webrtc { -namespace { - -// Used in rtc::Bind to keep a buffer alive until destructor is called. -static void NoLongerUsedCallback(rtc::scoped_refptr<VideoFrameBuffer> dummy) {} - -} // anonymous namespace uint8_t* VideoFrameBuffer::MutableData(PlaneType type) { RTC_NOTREACHED(); @@ -238,7 +232,7 @@ rtc::scoped_refptr<VideoFrameBuffer> ShallowCenterCrop( y_plane, buffer->stride(kYPlane), u_plane, buffer->stride(kUPlane), v_plane, buffer->stride(kVPlane), - rtc::Bind(&NoLongerUsedCallback, buffer)); + rtc::KeepRefUntilDone(buffer)); } } // namespace webrtc |