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

Unified Diff: webkit/media/webmediaplayer_impl.cc

Issue 11092054: Teach BindToLoop to create callbacks that accept scoped parameters. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: xhwang CR Created 8 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « media/base/bind_to_loop_unittest.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webkit/media/webmediaplayer_impl.cc
diff --git a/webkit/media/webmediaplayer_impl.cc b/webkit/media/webmediaplayer_impl.cc
index bdc4436b32c31182f7b999e218c504ce1b4caa76..1e68aacb858bfe63a3596dd81711e570ae849075 100644
--- a/webkit/media/webmediaplayer_impl.cc
+++ b/webkit/media/webmediaplayer_impl.cc
@@ -98,6 +98,10 @@ COMPILE_ASSERT_MATCHING_ENUM(UseCredentials);
media::BindToLoop(main_loop_->message_loop_proxy(), base::Bind( \
function, AsWeakPtr()))
+#define BIND_TO_RENDER_LOOP_2(function, arg1, arg2) \
+ media::BindToLoop(main_loop_->message_loop_proxy(), base::Bind( \
+ function, AsWeakPtr(), arg1, arg2))
+
static WebKit::WebTimeRanges ConvertToWebTimeRanges(
const media::Ranges<base::TimeDelta>& ranges) {
WebKit::WebTimeRanges result(ranges.size());
@@ -115,15 +119,6 @@ typedef base::Callback<void(const std::string&,
scoped_array<uint8>,
int)> OnNeedKeyCB;
-static void OnDemuxerNeedKeyTrampoline(
- const scoped_refptr<base::MessageLoopProxy>& message_loop,
- const OnNeedKeyCB& need_key_cb,
- scoped_array<uint8> init_data,
- int init_data_size) {
- message_loop->PostTask(FROM_HERE, base::Bind(
- need_key_cb, "", "", base::Passed(&init_data), init_data_size));
-}
-
WebMediaPlayerImpl::WebMediaPlayerImpl(
WebKit::WebFrame* frame,
WebKit::WebMediaPlayerClient* client,
@@ -275,9 +270,7 @@ void WebMediaPlayerImpl::load(const WebKit::WebURL& url, CORSMode cors_mode) {
if (!url.isEmpty() && url == GetClient()->sourceURL()) {
chunk_demuxer_ = new media::ChunkDemuxer(
BIND_TO_RENDER_LOOP(&WebMediaPlayerImpl::OnDemuxerOpened),
- base::Bind(&OnDemuxerNeedKeyTrampoline,
- main_loop_->message_loop_proxy(),
- base::Bind(&WebMediaPlayerImpl::OnNeedKey, AsWeakPtr())));
+ BIND_TO_RENDER_LOOP_2(&WebMediaPlayerImpl::OnNeedKey, "", ""));
BuildMediaSourceCollection(chunk_demuxer_,
message_loop_factory_.get(),
« no previous file with comments | « media/base/bind_to_loop_unittest.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698