| OLD | NEW | 
| (Empty) |  | 
 |   1 /* | 
 |   2  * Copyright (C) 2007-2009 Google Inc. All rights reserved. | 
 |   3  * | 
 |   4  * Redistribution and use in source and binary forms, with or without | 
 |   5  * modification, are permitted provided that the following conditions are | 
 |   6  * met: | 
 |   7  * | 
 |   8  *     * Redistributions of source code must retain the above copyright | 
 |   9  * notice, this list of conditions and the following disclaimer. | 
 |  10  *     * Redistributions in binary form must reproduce the above | 
 |  11  * copyright notice, this list of conditions and the following disclaimer | 
 |  12  * in the documentation and/or other materials provided with the | 
 |  13  * distribution. | 
 |  14  *     * Neither the name of Google Inc. nor the names of its | 
 |  15  * contributors may be used to endorse or promote products derived from | 
 |  16  * this software without specific prior written permission. | 
 |  17  * | 
 |  18  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | 
 |  19  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | 
 |  20  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | 
 |  21  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | 
 |  22  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | 
 |  23  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | 
 |  24  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | 
 |  25  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 
 |  26  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 
 |  27  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 
 |  28  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 
 |  29  */ | 
 |  30  | 
 |  31 #include "config.h" | 
 |  32 #include "bindings/core/v8/ScheduledActionBase.h" | 
 |  33  | 
 |  34 #include "bindings/core/v8/ScriptController.h" | 
 |  35 #include "core/dom/Document.h" | 
 |  36 #include "core/dom/ExecutionContext.h" | 
 |  37 #include "core/frame/LocalFrame.h" | 
 |  38 #include "core/workers/WorkerGlobalScope.h" | 
 |  39 #include "platform/Logging.h" | 
 |  40 #include "platform/TraceEvent.h" | 
 |  41  | 
 |  42 namespace blink { | 
 |  43  | 
 |  44 ScheduledActionBase::ScheduledActionBase() | 
 |  45 { | 
 |  46 } | 
 |  47  | 
 |  48 ScheduledActionBase::~ScheduledActionBase() | 
 |  49 { | 
 |  50 } | 
 |  51  | 
 |  52 void ScheduledActionBase::execute(ExecutionContext* context) | 
 |  53 { | 
 |  54     if (context->isDocument()) { | 
 |  55         LocalFrame* frame = toDocument(context)->frame(); | 
 |  56         if (!frame) { | 
 |  57             WTF_LOG(Timers, "ScheduledAction::execute %p: no frame", this); | 
 |  58             return; | 
 |  59         } | 
 |  60         if (!frame->script().canExecuteScripts(AboutToExecuteScript)) { | 
 |  61             WTF_LOG(Timers, "ScheduledAction::execute %p: frame can not execute 
    scripts", this); | 
 |  62             return; | 
 |  63         } | 
 |  64         execute(frame); | 
 |  65     } else { | 
 |  66         WTF_LOG(Timers, "ScheduledAction::execute %p: worker scope", this); | 
 |  67         execute(toWorkerGlobalScope(context)); | 
 |  68     } | 
 |  69 } | 
 |  70  | 
 |  71 } // namespace blink | 
| OLD | NEW |