summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorscherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-28 20:46:46 +0000
committerscherkus@chromium.org <scherkus@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-07-28 20:46:46 +0000
commitb572562659e2b46d99ee2a049e57f5d3dd28e0a7 (patch)
treeb9bd76097d46ca3073528c5d30c42446963c21b6
parent2e6707f57abfe9a98bf5d9c931defc2efd12e483 (diff)
downloadchromium_src-b572562659e2b46d99ee2a049e57f5d3dd28e0a7.zip
chromium_src-b572562659e2b46d99ee2a049e57f5d3dd28e0a7.tar.gz
chromium_src-b572562659e2b46d99ee2a049e57f5d3dd28e0a7.tar.bz2
Revert "Pipeline will execute a callback whenever an run-time error has happened."
TBR=kylep Review URL: http://codereview.chromium.org/160287 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@21885 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--media/base/pipeline_impl.cc10
-rw-r--r--media/base/pipeline_impl.h9
-rw-r--r--media/base/pipeline_impl_unittest.cc7
-rw-r--r--webkit/glue/webmediaplayer_impl.cc46
-rw-r--r--webkit/glue/webmediaplayer_impl.h6
5 files changed, 1 insertions, 77 deletions
diff --git a/media/base/pipeline_impl.cc b/media/base/pipeline_impl.cc
index 4ad6ff8..e5f1c0c 100644
--- a/media/base/pipeline_impl.cc
+++ b/media/base/pipeline_impl.cc
@@ -238,10 +238,6 @@ PipelineError PipelineImpl::GetError() const {
return error_;
}
-void PipelineImpl::SetPipelineErrorCallback(PipelineCallback* error_callback) {
- error_callback_.reset(error_callback);
-}
-
void PipelineImpl::ResetState() {
AutoLock auto_lock(lock_);
const base::TimeDelta kZero;
@@ -539,12 +535,6 @@ void PipelineImpl::ErrorChangedTask(PipelineError error) {
// Destroy every filter and reset the pipeline as well.
DestroyFilters();
-
- // If our owner has requested to be notified of an error, execute
- // |error_callback_| unless we have a "good" error.
- if (error_callback_.get() && error != PIPELINE_STOPPING) {
- error_callback_->Run();
- }
}
void PipelineImpl::PlaybackRateChangedTask(float playback_rate) {
diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h
index 5c84e26..02c8bce 100644
--- a/media/base/pipeline_impl.h
+++ b/media/base/pipeline_impl.h
@@ -7,10 +7,9 @@
#ifndef MEDIA_BASE_PIPELINE_IMPL_H_
#define MEDIA_BASE_PIPELINE_IMPL_H_
-#include <map>
-#include <set>
#include <string>
#include <vector>
+#include <set>
#include "base/message_loop.h"
#include "base/ref_counted.h"
@@ -84,11 +83,6 @@ class PipelineImpl : public Pipeline, public FilterHost {
virtual void GetVideoSize(size_t* width_out, size_t* height_out) const;
virtual PipelineError GetError() const;
- // |error_callback_| will be executed upon an error in the pipeline. If
- // |error_callback_| is NULL, it is ignored. The pipeline takes ownernship
- // of |error_callback|.
- virtual void SetPipelineErrorCallback(PipelineCallback* error_callback);
-
private:
// Pipeline states, as described above.
enum State {
@@ -323,7 +317,6 @@ class PipelineImpl : public Pipeline, public FilterHost {
// Callbacks for various pipeline operations.
scoped_ptr<PipelineCallback> seek_callback_;
scoped_ptr<PipelineCallback> stop_callback_;
- scoped_ptr<PipelineCallback> error_callback_;
// Vector of our filters and map maintaining the relationship between the
// FilterType and the filter itself.
diff --git a/media/base/pipeline_impl_unittest.cc b/media/base/pipeline_impl_unittest.cc
index 6913cdc..e745761 100644
--- a/media/base/pipeline_impl_unittest.cc
+++ b/media/base/pipeline_impl_unittest.cc
@@ -32,7 +32,6 @@ class CallbackHelper {
MOCK_METHOD0(OnStart, void());
MOCK_METHOD0(OnSeek, void());
MOCK_METHOD0(OnStop, void());
- MOCK_METHOD0(OnError, void());
private:
DISALLOW_COPY_AND_ASSIGN(CallbackHelper);
@@ -49,9 +48,6 @@ class PipelineImplTest : public ::testing::Test {
PipelineImplTest()
: pipeline_(new PipelineImpl(&message_loop_)),
mocks_(new MockFilterFactory()) {
- pipeline_->SetPipelineErrorCallback(NewCallback(
- reinterpret_cast<CallbackHelper*>(&callbacks_),
- &CallbackHelper::OnError));
}
virtual ~PipelineImplTest() {
@@ -236,7 +232,6 @@ TEST_F(PipelineImplTest, NeverInitializes) {
}
TEST_F(PipelineImplTest, RequiredFilterMissing) {
- EXPECT_CALL(callbacks_, OnError());
mocks_->set_creation_successful(false);
InitializePipeline();
@@ -250,7 +245,6 @@ TEST_F(PipelineImplTest, URLNotFound) {
.WillOnce(DoAll(SetError(mocks_->data_source(),
PIPELINE_ERROR_URL_NOT_FOUND),
Invoke(&RunFilterCallback)));
- EXPECT_CALL(callbacks_, OnError());
EXPECT_CALL(*mocks_->data_source(), Stop());
InitializePipeline();
@@ -270,7 +264,6 @@ TEST_F(PipelineImplTest, NoStreams) {
EXPECT_CALL(*mocks_->demuxer(), GetNumberOfStreams())
.WillRepeatedly(Return(0));
EXPECT_CALL(*mocks_->demuxer(), Stop());
- EXPECT_CALL(callbacks_, OnError());
InitializePipeline();
EXPECT_FALSE(pipeline_->IsInitialized());
diff --git a/webkit/glue/webmediaplayer_impl.cc b/webkit/glue/webmediaplayer_impl.cc
index 14a9524..d8bad19 100644
--- a/webkit/glue/webmediaplayer_impl.cc
+++ b/webkit/glue/webmediaplayer_impl.cc
@@ -92,11 +92,6 @@ void WebMediaPlayerImpl::Proxy::PipelineSeekCallback() {
&WebMediaPlayerImpl::Proxy::PipelineSeekTask));
}
-void WebMediaPlayerImpl::Proxy::PipelineErrorCallback() {
- render_loop_->PostTask(FROM_HERE, NewRunnableMethod(this,
- &WebMediaPlayerImpl::Proxy::PipelineErrorTask));
-}
-
void WebMediaPlayerImpl::Proxy::RepaintTask() {
DCHECK(MessageLoop::current() == render_loop_);
{
@@ -123,13 +118,6 @@ void WebMediaPlayerImpl::Proxy::PipelineSeekTask() {
}
}
-void WebMediaPlayerImpl::Proxy::PipelineErrorTask() {
- DCHECK(MessageLoop::current() == render_loop_);
- if (webmediaplayer_) {
- webmediaplayer_->OnPipelineError();
- }
-}
-
/////////////////////////////////////////////////////////////////////////////
// WebMediaPlayerImpl implementation
@@ -152,8 +140,6 @@ WebMediaPlayerImpl::WebMediaPlayerImpl(WebKit::WebMediaPlayerClient* client,
NOTREACHED() << "Could not start PipelineThread";
} else {
pipeline_ = new media::PipelineImpl(pipeline_thread_.message_loop());
- pipeline_->SetPipelineErrorCallback(NewCallback(proxy_.get(),
- &WebMediaPlayerImpl::Proxy::PipelineErrorCallback));
}
// Also we want to be notified of |main_loop_| destruction.
@@ -403,38 +389,6 @@ void WebMediaPlayerImpl::OnPipelineSeek() {
}
}
-void WebMediaPlayerImpl::OnPipelineError() {
- DCHECK(MessageLoop::current() == main_loop_);
- switch (pipeline_->GetError()) {
- case media::PIPELINE_OK:
- case media::PIPELINE_STOPPING:
- // We're in a good state. Do nothing.
- break;
-
- case media::PIPELINE_ERROR_INITIALIZATION_FAILED:
- case media::PIPELINE_ERROR_REQUIRED_FILTER_MISSING:
- case media::PIPELINE_ERROR_COULD_NOT_RENDER:
- // Format error.
- SetNetworkState(WebMediaPlayer::FormatError);
- break;
-
- case media::PIPELINE_ERROR_URL_NOT_FOUND:
- case media::PIPELINE_ERROR_NETWORK:
- case media::PIPELINE_ERROR_DECODE:
- case media::PIPELINE_ERROR_ABORT:
- case media::PIPELINE_ERROR_OUT_OF_MEMORY:
- case media::PIPELINE_ERROR_READ:
- case media::PIPELINE_ERROR_AUDIO_HARDWARE:
- case media::DEMUXER_ERROR_COULD_NOT_OPEN:
- case media::DEMUXER_ERROR_COULD_NOT_PARSE:
- case media::DEMUXER_ERROR_NO_SUPPORTED_STREAMS:
- case media::DEMUXER_ERROR_COULD_NOT_CREATE_THREAD:
- // Decode error.
- SetNetworkState(WebMediaPlayer::DecodeError);
- break;
- }
-}
-
void WebMediaPlayerImpl::SetNetworkState(
WebKit::WebMediaPlayer::NetworkState state) {
DCHECK(MessageLoop::current() == main_loop_);
diff --git a/webkit/glue/webmediaplayer_impl.h b/webkit/glue/webmediaplayer_impl.h
index 841e9bf..a73ea71 100644
--- a/webkit/glue/webmediaplayer_impl.h
+++ b/webkit/glue/webmediaplayer_impl.h
@@ -106,7 +106,6 @@ class WebMediaPlayerImpl : public WebKit::WebMediaPlayer,
// WebMediaPlayerImpl.
void PipelineInitializationCallback();
void PipelineSeekCallback();
- void PipelineErrorCallback();
private:
// Invoke |webmediaplayer_| to perform a repaint.
@@ -118,9 +117,6 @@ class WebMediaPlayerImpl : public WebKit::WebMediaPlayer,
// Notify |webmediaplayer_| that a seek has finished.
void PipelineSeekTask();
- // Notify |webmediaplayer_| that a pipeline error has been set.
- void PipelineErrorTask();
-
// The render message loop where WebKit lives.
MessageLoop* render_loop_;
WebMediaPlayerImpl* webmediaplayer_;
@@ -217,8 +213,6 @@ class WebMediaPlayerImpl : public WebKit::WebMediaPlayer,
void OnPipelineSeek();
- void OnPipelineError();
-
private:
// Helpers that set the network/ready state and notifies the client if
// they've changed.