| Index: webkit/quota/quota_task.cc
|
| diff --git a/webkit/quota/quota_task.cc b/webkit/quota/quota_task.cc
|
| index 27542d77da8b4179024cb56f611a7823454b3938..728b999ea597a6d31f6f440054c172fa5348e5f6 100644
|
| --- a/webkit/quota/quota_task.cc
|
| +++ b/webkit/quota/quota_task.cc
|
| @@ -30,7 +30,8 @@ void QuotaTask::Start() {
|
|
|
| QuotaTask::QuotaTask(QuotaTaskObserver* observer)
|
| : observer_(observer),
|
| - original_task_runner_(base::MessageLoopProxy::current()) {
|
| + original_task_runner_(base::MessageLoopProxy::current()),
|
| + delete_scheduled_(false) {
|
| }
|
|
|
| void QuotaTask::CallCompleted() {
|
| @@ -48,6 +49,10 @@ void QuotaTask::Abort() {
|
| }
|
|
|
| void QuotaTask::DeleteSoon() {
|
| + DCHECK(original_task_runner_->BelongsToCurrentThread());
|
| + if (delete_scheduled_)
|
| + return;
|
| + delete_scheduled_ = true;
|
| MessageLoop::current()->DeleteSoon(FROM_HERE, this);
|
| }
|
|
|
|
|