diff options
author | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-27 17:46:43 +0000 |
---|---|---|
committer | acolwell@chromium.org <acolwell@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-27 17:46:43 +0000 |
commit | 291fb3ed59e445c03756fa678c0935fc7140cdcf (patch) | |
tree | a62a0025bc0ad82c168b39bfb7de8db8c28550ab /media | |
parent | 8f201ee54cd4f0a87e7bc23e5dfd45d1536c61bf (diff) | |
download | chromium_src-291fb3ed59e445c03756fa678c0935fc7140cdcf.zip chromium_src-291fb3ed59e445c03756fa678c0935fc7140cdcf.tar.gz chromium_src-291fb3ed59e445c03756fa678c0935fc7140cdcf.tar.bz2 |
Fix invalid pointer dereference in WebDataSourceFactory when playback is cancelled during init.
Removed Clone() from DemuxerFactory since it isn't being used.
BUG=90393
TEST=WebDataSourceFactoryTest.*
Review URL: http://codereview.chromium.org/7465048
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94316 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media')
-rw-r--r-- | media/base/filter_factories.h | 4 | ||||
-rw-r--r-- | media/filters/adaptive_demuxer.cc | 4 | ||||
-rw-r--r-- | media/filters/adaptive_demuxer.h | 1 | ||||
-rw-r--r-- | media/filters/chunk_demuxer_factory.cc | 4 | ||||
-rw-r--r-- | media/filters/chunk_demuxer_factory.h | 1 | ||||
-rw-r--r-- | media/filters/ffmpeg_demuxer_factory.cc | 4 | ||||
-rw-r--r-- | media/filters/ffmpeg_demuxer_factory.h | 1 |
7 files changed, 0 insertions, 19 deletions
diff --git a/media/base/filter_factories.h b/media/base/filter_factories.h index f9c8fa7..c7b10fe 100644 --- a/media/base/filter_factories.h +++ b/media/base/filter_factories.h @@ -42,10 +42,6 @@ class DemuxerFactory { // Builds a Demuxer for |url| and returns it via |callback|. virtual void Build(const std::string& url, const BuildCB& callback) = 0; - - // Makes a copy of this factory. - // NOTE: Pending requests are not cloned. - virtual DemuxerFactory* Clone() const = 0; }; } // namespace media diff --git a/media/filters/adaptive_demuxer.cc b/media/filters/adaptive_demuxer.cc index 19d7887..eb902cd 100644 --- a/media/filters/adaptive_demuxer.cc +++ b/media/filters/adaptive_demuxer.cc @@ -857,10 +857,6 @@ AdaptiveDemuxerFactory::AdaptiveDemuxerFactory( AdaptiveDemuxerFactory::~AdaptiveDemuxerFactory() {} -DemuxerFactory* AdaptiveDemuxerFactory::Clone() const { - return new AdaptiveDemuxerFactory(delegate_factory_->Clone()); -} - // See AdaptiveDemuxerFactory's class-level comment for |url|'s format. bool ParseAdaptiveUrl( const std::string& url, int* audio_index, int* video_index, diff --git a/media/filters/adaptive_demuxer.h b/media/filters/adaptive_demuxer.h index c357042..24b480a 100644 --- a/media/filters/adaptive_demuxer.h +++ b/media/filters/adaptive_demuxer.h @@ -253,7 +253,6 @@ class AdaptiveDemuxerFactory : public DemuxerFactory { // If any of the underlying Demuxers encounter construction errors, only the // first one (in manifest order) will get reported back in |cb|. virtual void Build(const std::string& url, const BuildCB& cb) OVERRIDE; - virtual DemuxerFactory* Clone() const OVERRIDE; private: scoped_ptr<DemuxerFactory> delegate_factory_; diff --git a/media/filters/chunk_demuxer_factory.cc b/media/filters/chunk_demuxer_factory.cc index 561be0e..6587325 100644 --- a/media/filters/chunk_demuxer_factory.cc +++ b/media/filters/chunk_demuxer_factory.cc @@ -55,8 +55,4 @@ void ChunkDemuxerFactory::Build(const std::string& url, const BuildCB& cb) { scoped_refptr<Demuxer>(demuxer.get()))); } -DemuxerFactory* ChunkDemuxerFactory::Clone() const { - return new ChunkDemuxerFactory(url_, delegate_factory_->Clone(), client_); -} - } // namespace media diff --git a/media/filters/chunk_demuxer_factory.h b/media/filters/chunk_demuxer_factory.h index a43b85f..7c9291e 100644 --- a/media/filters/chunk_demuxer_factory.h +++ b/media/filters/chunk_demuxer_factory.h @@ -26,7 +26,6 @@ class ChunkDemuxerFactory : public DemuxerFactory { // DemuxerFactory methods. virtual void Build(const std::string& url, const BuildCB& cb) OVERRIDE; - virtual DemuxerFactory* Clone() const OVERRIDE; private: std::string url_; diff --git a/media/filters/ffmpeg_demuxer_factory.cc b/media/filters/ffmpeg_demuxer_factory.cc index bead67b..01ccbee 100644 --- a/media/filters/ffmpeg_demuxer_factory.cc +++ b/media/filters/ffmpeg_demuxer_factory.cc @@ -42,8 +42,4 @@ void FFmpegDemuxerFactory::Build(const std::string& url, const BuildCB& cb) { base::Bind(&DataSourceFactoryDone, cb, loop_)); } -DemuxerFactory* FFmpegDemuxerFactory::Clone() const { - return new FFmpegDemuxerFactory(data_source_factory_->Clone(), loop_); -} - } // namespace media diff --git a/media/filters/ffmpeg_demuxer_factory.h b/media/filters/ffmpeg_demuxer_factory.h index 029248e..091ee93 100644 --- a/media/filters/ffmpeg_demuxer_factory.h +++ b/media/filters/ffmpeg_demuxer_factory.h @@ -25,7 +25,6 @@ class FFmpegDemuxerFactory : public DemuxerFactory { // DemuxerFactory methods. virtual void Build(const std::string& url, const BuildCB& cb) OVERRIDE; - virtual DemuxerFactory* Clone() const OVERRIDE; private: scoped_ptr<DataSourceFactory> data_source_factory_; |