summaryrefslogtreecommitdiffstats
path: root/base/message_loop.cc
diff options
context:
space:
mode:
Diffstat (limited to 'base/message_loop.cc')
-rw-r--r--base/message_loop.cc16
1 files changed, 6 insertions, 10 deletions
diff --git a/base/message_loop.cc b/base/message_loop.cc
index da463b1..fbdc94f 100644
--- a/base/message_loop.cc
+++ b/base/message_loop.cc
@@ -372,8 +372,10 @@ bool MessageLoop::DeletePendingTasks() {
// TODO(darin): Delete all tasks once it is safe to do so.
// Until it is totally safe, just do it when running Purify or
// Valgrind.
-#if defined(PURIFY)
+#if defined(OS_WIN)
+#ifdef PURIFY
delete pending_task.task;
+#endif // PURIFY
#elif defined(OS_POSIX)
if (RUNNING_ON_VALGRIND)
delete pending_task.task;
@@ -383,19 +385,13 @@ bool MessageLoop::DeletePendingTasks() {
did_work |= !deferred_non_nestable_work_queue_.empty();
while (!deferred_non_nestable_work_queue_.empty()) {
// TODO(darin): Delete all tasks once it is safe to do so.
- // Until it is totaly safe, only delete them under Purify and Valgrind.
-#if defined(PURIFY)
+ // Until it is totaly safe, just delete them to keep purify happy.
+#ifdef PURIFY
Task* task = deferred_non_nestable_work_queue_.front().task;
-#elif defined(OS_POSIX)
- if (RUNNING_ON_VALGRIND)
- Task* task = deferred_non_nestable_work_queue_.front().task;
#endif
deferred_non_nestable_work_queue_.pop();
-#if defined(PURIFY)
+#ifdef PURIFY
delete task;
-#elif defined(OS_POSIX)
- if (RUNNING_ON_VALGRIND)
- delete task;
#endif
}
did_work |= !delayed_work_queue_.empty();