Index: webkit/media/simple_data_source.cc |
diff --git a/webkit/media/simple_data_source.cc b/webkit/media/simple_data_source.cc |
index b8e13173bef38e8c28341b62346206c0abb4d819..5485027bea6830a12403ebfa2bd1aab0497307b3 100644 |
--- a/webkit/media/simple_data_source.cc |
+++ b/webkit/media/simple_data_source.cc |
@@ -270,13 +270,19 @@ void SimpleDataSource::Abort() { |
base::AutoLock auto_lock(lock_); |
state_ = STOPPED; |
initialize_cb_.Reset(); |
- CancelTask(); |
+ CancelTask_Locked(); |
frame_ = NULL; |
} |
void SimpleDataSource::CancelTask() { |
DCHECK(MessageLoop::current() == render_loop_); |
base::AutoLock auto_lock(lock_); |
+ CancelTask_Locked(); |
+} |
+ |
+void SimpleDataSource::CancelTask_Locked() { |
+ DCHECK(MessageLoop::current() == render_loop_); |
+ lock_.AssertAcquired(); |
DCHECK_EQ(state_, STOPPED); |
// Cancel any pending requests. |