| Index: media/base/pipeline_impl.h | 
| diff --git a/media/base/pipeline_impl.h b/media/base/pipeline_impl.h | 
| index 57f8aebda2d75c85118f2cadd3b97ffe70bc3475..ad7340eb8d590e75444d6bfbbaae584deb63b649 100644 | 
| --- a/media/base/pipeline_impl.h | 
| +++ b/media/base/pipeline_impl.h | 
| @@ -208,8 +208,8 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost { | 
| virtual void SetCurrentReadPosition(int64 offset) OVERRIDE; | 
| virtual int64 GetCurrentReadPosition() OVERRIDE; | 
|  | 
| -  // Callback executed by filters upon completing initialization. | 
| -  void OnFilterInitialize(); | 
| +  // Callbacks executed by filters upon completing initialization. | 
| +  void OnFilterInitialize(PipelineStatus status); | 
|  | 
| // Callback executed by filters upon completing Play(), Pause(), or Stop(). | 
| void OnFilterStateTransition(); | 
| @@ -233,8 +233,9 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost { | 
| // InitializeTask() performs initialization in multiple passes. It is executed | 
| // as a result of calling Start() or InitializationComplete() that advances | 
| // initialization to the next state. It works as a hub of state transition for | 
| -  // initialization. | 
| -  void InitializeTask(); | 
| +  // initialization.  One stage communicates its status to the next through | 
| +  // |last_stage_status|. | 
| +  void InitializeTask(PipelineStatus last_stage_status); | 
|  | 
| // Stops and destroys all filters, placing the pipeline in the kStopped state. | 
| void StopTask(const PipelineStatusCB& stop_callback); | 
| @@ -286,6 +287,10 @@ class MEDIA_EXPORT PipelineImpl : public Pipeline, public FilterHost { | 
| // MessageLoop. | 
| bool PrepareFilter(scoped_refptr<Filter> filter); | 
|  | 
| +  // DiscardFilter() undoes PrepareFilter's work.  Returns false in case of | 
| +  // error or unknown |filter|. | 
| +  bool DiscardFilter(scoped_refptr<Filter> filter); | 
| + | 
| // The following initialize methods are used to select a specific type of | 
| // Filter object from FilterCollection and initialize it asynchronously. | 
| void InitializeDemuxer(); | 
|  |