Changeset 148537 in webkit


Ignore:
Timestamp:
Apr 16, 2013, 1:05:38 PM (13 years ago)
Author:
andersca@apple.com
Message:

Begin chipping away at ScriptState
https://bugs.webkit.org/show_bug.cgi?id=114695

Reviewed by Geoffrey Garen.

Remove ScriptStateProtectedPtr as well as evalEnabled and setEvalEnabled.

  • bindings/js/ScriptState.cpp:
  • bindings/js/ScriptState.h:
  • inspector/InjectedScriptBase.cpp:

(WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):

  • inspector/ScriptArguments.cpp:

(WebCore::ScriptArguments::ScriptArguments):
(WebCore::ScriptArguments::globalState):

  • inspector/ScriptArguments.h:
Location:
trunk/Source/WebCore
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r148536 r148537  
     12013-04-16  Anders Carlsson  <andersca@apple.com>
     2
     3        Begin chipping away at ScriptState
     4        https://bugs.webkit.org/show_bug.cgi?id=114695
     5
     6        Reviewed by Geoffrey Garen.
     7
     8        Remove ScriptStateProtectedPtr as well as evalEnabled and setEvalEnabled.
     9
     10        * bindings/js/ScriptState.cpp:
     11        * bindings/js/ScriptState.h:
     12        * inspector/InjectedScriptBase.cpp:
     13        (WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):
     14        * inspector/ScriptArguments.cpp:
     15        (WebCore::ScriptArguments::ScriptArguments):
     16        (WebCore::ScriptArguments::globalState):
     17        * inspector/ScriptArguments.h:
     18
    1192013-04-15  Anders Carlsson  <andersca@apple.com>
    220
  • trunk/Source/WebCore/bindings/js/ScriptState.cpp

    r148373 r148537  
    4949namespace WebCore {
    5050
    51 ScriptStateProtectedPtr::~ScriptStateProtectedPtr()
    52 {
    53 }
    54 
    55 ScriptStateProtectedPtr::ScriptStateProtectedPtr(ScriptState* scriptState)
    56     : m_globalObject(scriptState->globalData(), scriptState->lexicalGlobalObject())
    57 {
    58 }
    59 
    60 ScriptState* ScriptStateProtectedPtr::get() const
    61 {
    62     if (m_globalObject)
    63         return const_cast<JSC::JSGlobalObject*>(m_globalObject.get())->globalExec();
    64     return 0;
    65 }
    66 
    6751DOMWindow* domWindowFromScriptState(ScriptState* scriptState)
    6852{
     
    7963        return 0;
    8064    return JSC::jsCast<JSDOMGlobalObject*>(globalObject)->scriptExecutionContext();
    81 }
    82 
    83 bool evalEnabled(ScriptState* scriptState)
    84 {
    85     JSC::JSGlobalObject* globalObject = scriptState->lexicalGlobalObject();
    86     return globalObject->evalEnabled();
    87 }
    88 
    89 void setEvalEnabled(ScriptState* scriptState, bool enabled)
    90 {
    91     JSC::JSGlobalObject* globalObject = scriptState->lexicalGlobalObject();
    92     return globalObject->setEvalEnabled(enabled);
    9365}
    9466
  • trunk/Source/WebCore/bindings/js/ScriptState.h

    r109540 r148537  
    3333#define ScriptState_h
    3434
    35 #include <heap/Strong.h>
    36 #include <wtf/Noncopyable.h>
    37 
    3835namespace JSC {
    3936class ExecState;
     
    5653typedef JSC::ExecState ScriptState;
    5754
    58 class ScriptStateProtectedPtr {
    59     WTF_MAKE_NONCOPYABLE(ScriptStateProtectedPtr);
    60 public:
    61     explicit ScriptStateProtectedPtr(ScriptState*);
    62     ~ScriptStateProtectedPtr();
    63     ScriptState* get() const;
    64 private:
    65     JSC::Strong<JSC::JSGlobalObject> m_globalObject;
    66 };
    67 
    6855DOMWindow* domWindowFromScriptState(ScriptState*);
    6956ScriptExecutionContext* scriptExecutionContextFromScriptState(ScriptState*);
    70 
    71 bool evalEnabled(ScriptState*);
    72 void setEvalEnabled(ScriptState*, bool);
    7357
    7458ScriptState* mainWorldScriptState(Frame*);
  • trunk/Source/WebCore/inspector/InjectedScriptBase.cpp

    r141891 r148537  
    3838#include "InspectorValues.h"
    3939#include "ScriptFunctionCall.h"
     40#include <runtime/JSGlobalObject.h>
    4041#include <wtf/text/WTFString.h>
    4142
     
    8182    bool evalIsDisabled = false;
    8283    if (scriptState) {
    83         evalIsDisabled = !evalEnabled(scriptState);
     84        evalIsDisabled = !scriptState->lexicalGlobalObject()->evalEnabled();
    8485        // Temporarily enable allow evals for inspector.
    8586        if (evalIsDisabled)
    86             setEvalEnabled(scriptState, true);
     87            scriptState->lexicalGlobalObject()->setEvalEnabled(true);
    8788    }
    8889
     
    9091
    9192    if (evalIsDisabled)
    92         setEvalEnabled(scriptState, false);
     93        scriptState->lexicalGlobalObject()->setEvalEnabled(false);
    9394
    9495    InspectorInstrumentation::didCallFunction(cookie);
  • trunk/Source/WebCore/inspector/ScriptArguments.cpp

    r95901 r148537  
    4242
    4343ScriptArguments::ScriptArguments(ScriptState* scriptState, Vector<ScriptValue>& arguments)
    44     : m_scriptState(scriptState)
     44    : m_globalObject(scriptState->globalData(), scriptState->lexicalGlobalObject())
    4545{
    4646    m_arguments.swap(arguments);
     
    5959ScriptState* ScriptArguments::globalState() const
    6060{
    61     return m_scriptState.get();
     61    if (m_globalObject)
     62        return const_cast<JSC::JSGlobalObject*>(m_globalObject.get())->globalExec();
     63    return 0;
    6264}
    6365
  • trunk/Source/WebCore/inspector/ScriptArguments.h

    r127757 r148537  
    3232#define ScriptArguments_h
    3333
    34 #include "ScriptState.h"
     34#include <heap/Strong.h>
    3535#include <wtf/Forward.h>
    3636#include <wtf/RefCounted.h>
     
    3838#include <wtf/text/WTFString.h>
    3939
     40namespace JSC {
     41class ExecState;
     42class JSGlobalObject;
     43}
     44
    4045namespace WebCore {
    4146
     47typedef JSC::ExecState ScriptState;
    4248class ScriptValue;
    4349
     
    5965    ScriptArguments(ScriptState*, Vector<ScriptValue>& arguments);
    6066
    61     ScriptStateProtectedPtr m_scriptState;
     67    JSC::Strong<JSC::JSGlobalObject> m_globalObject;
    6268    Vector<ScriptValue> m_arguments;
    6369};
Note: See TracChangeset for help on using the changeset viewer.