| Index: third_party/WebKit/Source/core/page/Page.cpp
|
| diff --git a/third_party/WebKit/Source/core/page/Page.cpp b/third_party/WebKit/Source/core/page/Page.cpp
|
| index 9f0f41c7b54da782a8403ff3ba28394b572689b2..8e101779021d5f6d4fd426f306f187837094c347 100644
|
| --- a/third_party/WebKit/Source/core/page/Page.cpp
|
| +++ b/third_party/WebKit/Source/core/page/Page.cpp
|
| @@ -260,8 +260,17 @@ void Page::setSuspended(bool suspend) {
|
| m_suspended = suspend;
|
| for (Frame* frame = mainFrame(); frame;
|
| frame = frame->tree().traverseNext()) {
|
| - if (frame->isLocalFrame())
|
| - toLocalFrame(frame)->loader().setDefersLoading(suspend);
|
| + if (!frame->isLocalFrame())
|
| + continue;
|
| + LocalFrame* localFrame = toLocalFrame(frame);
|
| + if (Document* document = localFrame->document()) {
|
| + if (suspend)
|
| + document->suspendScheduledTasks();
|
| + else
|
| + document->resumeScheduledTasks();
|
| + }
|
| +
|
| + localFrame->loader().setDefersLoading(suspend);
|
| }
|
| }
|
|
|
|
|