[Code Health] Convert Closure to OnceClosure
The pause_cb_ Closure is a OnceClosure. Change Pause() and Flush() to take a OnceClosure. This fixes text_render.cc not to use Closure. Every instance is now either RepeatingClosure or OnceClosure. Bug: 1007799 Change-Id: I6ad66ccb149cac914325da98da2f4c0a3965fd7e Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2095709 Reviewed-by: Chrome Cunningham <chcunningham@chromium.org> Commit-Queue: Raymond Toy <rtoy@chromium.org> Cr-Commit-Position: refs/heads/master@{#750269}
This commit is contained in:
@ -65,22 +65,22 @@ void TextRenderer::StartPlaying() {
|
||||
state_ = kPlaying;
|
||||
}
|
||||
|
||||
void TextRenderer::Pause(const base::Closure& callback) {
|
||||
void TextRenderer::Pause(base::OnceClosure callback) {
|
||||
DCHECK(task_runner_->BelongsToCurrentThread());
|
||||
DCHECK(state_ == kPlaying || state_ == kEnded) << "state_ " << state_;
|
||||
DCHECK_GE(pending_read_count_, 0);
|
||||
|
||||
if (pending_read_count_ == 0) {
|
||||
state_ = kPaused;
|
||||
task_runner_->PostTask(FROM_HERE, callback);
|
||||
task_runner_->PostTask(FROM_HERE, std::move(callback));
|
||||
return;
|
||||
}
|
||||
|
||||
pause_cb_ = callback;
|
||||
pause_cb_ = std::move(callback);
|
||||
state_ = kPausePending;
|
||||
}
|
||||
|
||||
void TextRenderer::Flush(const base::Closure& callback) {
|
||||
void TextRenderer::Flush(base::OnceClosure callback) {
|
||||
DCHECK(task_runner_->BelongsToCurrentThread());
|
||||
DCHECK_EQ(pending_read_count_, 0);
|
||||
DCHECK(state_ == kPaused) << "state_ " << state_;
|
||||
@ -91,7 +91,7 @@ void TextRenderer::Flush(const base::Closure& callback) {
|
||||
itr->second->text_ranges_.Reset();
|
||||
}
|
||||
DCHECK_EQ(pending_eos_set_.size(), text_track_state_map_.size());
|
||||
task_runner_->PostTask(FROM_HERE, callback);
|
||||
task_runner_->PostTask(FROM_HERE, std::move(callback));
|
||||
}
|
||||
|
||||
void TextRenderer::AddTextStream(DemuxerStream* text_stream,
|
||||
|
@ -52,10 +52,10 @@ class MEDIA_EXPORT TextRenderer {
|
||||
|
||||
// Temporarily suspends decoding and rendering, executing |callback| when
|
||||
// playback has been suspended.
|
||||
void Pause(const base::Closure& callback);
|
||||
void Pause(base::OnceClosure callback);
|
||||
|
||||
// Discards any text data, executing |callback| when completed.
|
||||
void Flush(const base::Closure& callback);
|
||||
void Flush(base::OnceClosure callback);
|
||||
|
||||
// Adds new |text_stream|, having the indicated |config|, to the text stream
|
||||
// collection managed by this text renderer.
|
||||
@ -109,7 +109,7 @@ class MEDIA_EXPORT TextRenderer {
|
||||
base::RepeatingClosure ended_cb_;
|
||||
|
||||
// Callback provided to Pause().
|
||||
base::Closure pause_cb_;
|
||||
base::OnceClosure pause_cb_;
|
||||
|
||||
// Simple state tracking variable.
|
||||
enum State {
|
||||
|
@ -54,9 +54,10 @@ class TextRendererTest : public testing::Test {
|
||||
void CreateTextRenderer() {
|
||||
DCHECK(!text_renderer_);
|
||||
|
||||
text_renderer_.reset(new TextRenderer(
|
||||
task_environment_.GetMainThreadTaskRunner(),
|
||||
base::Bind(&TextRendererTest::OnAddTextTrack, base::Unretained(this))));
|
||||
text_renderer_.reset(
|
||||
new TextRenderer(task_environment_.GetMainThreadTaskRunner(),
|
||||
base::BindRepeating(&TextRendererTest::OnAddTextTrack,
|
||||
base::Unretained(this))));
|
||||
text_renderer_->Initialize(
|
||||
base::BindRepeating(&TextRendererTest::OnEnd, base::Unretained(this)));
|
||||
}
|
||||
@ -171,14 +172,14 @@ class TextRendererTest : public testing::Test {
|
||||
|
||||
void Pause() {
|
||||
text_renderer_->Pause(
|
||||
base::Bind(&TextRendererTest::OnPause, base::Unretained(this)));
|
||||
base::BindOnce(&TextRendererTest::OnPause, base::Unretained(this)));
|
||||
base::RunLoop().RunUntilIdle();
|
||||
}
|
||||
|
||||
void Flush() {
|
||||
EXPECT_CALL(*this, OnFlush());
|
||||
text_renderer_->Flush(
|
||||
base::Bind(&TextRendererTest::OnFlush, base::Unretained(this)));
|
||||
base::BindOnce(&TextRendererTest::OnFlush, base::Unretained(this)));
|
||||
}
|
||||
|
||||
void ExpectRead(size_t idx) {
|
||||
@ -205,9 +206,10 @@ class TextRendererTest : public testing::Test {
|
||||
};
|
||||
|
||||
TEST_F(TextRendererTest, CreateTextRendererNoInit) {
|
||||
text_renderer_.reset(new TextRenderer(
|
||||
task_environment_.GetMainThreadTaskRunner(),
|
||||
base::Bind(&TextRendererTest::OnAddTextTrack, base::Unretained(this))));
|
||||
text_renderer_.reset(
|
||||
new TextRenderer(task_environment_.GetMainThreadTaskRunner(),
|
||||
base::BindRepeating(&TextRendererTest::OnAddTextTrack,
|
||||
base::Unretained(this))));
|
||||
text_renderer_.reset();
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user