| Index: cc/tiles/image_controller_unittest.cc
|
| diff --git a/cc/tiles/image_controller_unittest.cc b/cc/tiles/image_controller_unittest.cc
|
| index b963ff1c9aa53fb826a310edd3d6837290164382..ddd537617a2a4cc5d891466d344dbdfa9081ed97 100644
|
| --- a/cc/tiles/image_controller_unittest.cc
|
| +++ b/cc/tiles/image_controller_unittest.cc
|
| @@ -21,17 +21,21 @@ class TestWorkerThread : public base::SimpleThread {
|
|
|
| void Run() override {
|
| for (;;) {
|
| - base::AutoLock hold(lock_);
|
| - if (shutdown_)
|
| - break;
|
| -
|
| - if (queue_.empty()) {
|
| - condition_.Wait();
|
| - continue;
|
| + base::Closure task;
|
| + {
|
| + base::AutoLock hold(lock_);
|
| + if (shutdown_)
|
| + break;
|
| +
|
| + if (queue_.empty()) {
|
| + condition_.Wait();
|
| + continue;
|
| + }
|
| +
|
| + task = queue_.front();
|
| + queue_.erase(queue_.begin());
|
| }
|
| -
|
| - queue_.front().Run();
|
| - queue_.erase(queue_.begin());
|
| + task.Run();
|
| }
|
| }
|
|
|
|
|