diff options
author | apatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-04 17:53:18 +0000 |
---|---|---|
committer | apatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-08-04 17:53:18 +0000 |
commit | 726cadbe27df6ef057661759bc2bcdfe3f46890e (patch) | |
tree | e619a6fbc745a15c66896f3c91e630e7556d0b33 /base | |
parent | fa339bc179559f2e87856cd7ae3e74eef4ed4799 (diff) | |
download | chromium_src-726cadbe27df6ef057661759bc2bcdfe3f46890e.zip chromium_src-726cadbe27df6ef057661759bc2bcdfe3f46890e.tar.gz chromium_src-726cadbe27df6ef057661759bc2bcdfe3f46890e.tar.bz2 |
TaskClosureAdapter::Run does not invoke the task if it is null.
This is an attempt to fix http://crbug.com/81449. If this actually fixes it then there is probably something more fundamentally wrong.
BUG=81449
Review URL: http://codereview.chromium.org/7563025
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95441 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rw-r--r-- | base/task.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/base/task.cc b/base/task.cc index 8c61473..a862cac 100644 --- a/base/task.cc +++ b/base/task.cc @@ -53,9 +53,11 @@ TaskClosureAdapter::~TaskClosureAdapter() { } void TaskClosureAdapter::Run() { - task_->Run(); - delete task_; - task_ = NULL; + if (task_) { + task_->Run(); + delete task_; + task_ = NULL; + } } // Don't leak tasks by default. |