ScriptValue InjectedScriptBase::callFunctionWithEvalEnabled(ScriptFunctionCall& function, bool& hadException) const { ASSERT(!isEmpty()); ExecutionContext* executionContext = m_injectedScriptObject.scriptState()->executionContext(); TRACE_EVENT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "FunctionCall", "data", InspectorFunctionCallEvent::data(executionContext, 0, name(), 1)); // FIXME(361045): remove InspectorInstrumentation calls once DevTools Timeline migrates to tracing. InspectorInstrumentationCookie cookie = InspectorInstrumentation::willCallFunction(executionContext, 0, name(), 1); ScriptState* scriptState = m_injectedScriptObject.scriptState(); bool evalIsDisabled = false; if (scriptState) { evalIsDisabled = !scriptState->evalEnabled(); // Temporarily enable allow evals for inspector. if (evalIsDisabled) scriptState->setEvalEnabled(true); } ScriptValue resultValue = function.call(hadException); if (evalIsDisabled) scriptState->setEvalEnabled(false); InspectorInstrumentation::didCallFunction(cookie); TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "UpdateCounters", "data", InspectorUpdateCountersEvent::data()); return resultValue; }
ScriptValue InjectedScriptBase::callFunctionWithEvalEnabled(ScriptFunctionCall& function, bool& hadException) const { ASSERT(!isEmpty()); ExecutionContext* executionContext = m_injectedScriptObject.scriptState()->executionContext(); ScriptState::Scope scope(m_injectedScriptObject.scriptState()); v8::Local<v8::Function> functionObj = function.function(); DevToolsFunctionInfo info(functionObj); TRACE_EVENT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "FunctionCall", "data", InspectorFunctionCallEvent::data(executionContext, info.scriptId(), "InjectedScriptSource.js", info.lineNumber())); InspectorInstrumentationCookie cookie = InspectorInstrumentation::willCallFunction(executionContext, info); ScriptState* scriptState = m_injectedScriptObject.scriptState(); bool evalIsDisabled = false; if (scriptState) { evalIsDisabled = !scriptState->evalEnabled(); // Temporarily enable allow evals for inspector. if (evalIsDisabled) scriptState->setEvalEnabled(true); } ScriptValue resultValue = function.call(hadException); if (evalIsDisabled) scriptState->setEvalEnabled(false); InspectorInstrumentation::didCallFunction(cookie); TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "UpdateCounters", TRACE_EVENT_SCOPE_THREAD, "data", InspectorUpdateCountersEvent::data()); return resultValue; }
ScriptValue InjectedScript::callFunctionWithEvalEnabled(ScriptFunctionCall& function, bool& hadException) const { ASSERT(!isEmpty()); ScriptState* scriptState = m_injectedScriptObject.scriptState(); ScriptState::Scope scope(scriptState); bool evalIsDisabled = !scriptState->evalEnabled(); // Temporarily enable allow evals for inspector. if (evalIsDisabled) scriptState->setEvalEnabled(true); ScriptValue resultValue = function.call(hadException); if (evalIsDisabled) scriptState->setEvalEnabled(false); TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "UpdateCounters", TRACE_EVENT_SCOPE_THREAD, "data", InspectorUpdateCountersEvent::data()); return resultValue; }
ScriptValue InjectedScriptBase::callFunctionWithEvalEnabled(ScriptFunctionCall& function, bool& hadException) const { ExecutionContext* executionContext = m_injectedScriptObject.scriptState()->executionContext(); InspectorInstrumentationCookie cookie = InspectorInstrumentation::willCallFunction(executionContext, name(), 1); ScriptState* scriptState = m_injectedScriptObject.scriptState(); bool evalIsDisabled = false; if (scriptState) { evalIsDisabled = !scriptState->evalEnabled(); // Temporarily enable allow evals for inspector. if (evalIsDisabled) scriptState->setEvalEnabled(true); } ScriptValue resultValue = function.call(hadException); if (evalIsDisabled) scriptState->setEvalEnabled(false); InspectorInstrumentation::didCallFunction(cookie); return resultValue; }
ScriptValue InjectedScriptBase::callFunctionWithEvalEnabled(ScriptFunctionCall& function, bool& hadException) const { ASSERT(!isEmpty()); ScriptState::Scope scope(m_injectedScriptObject.scriptState()); v8::Local<v8::Function> functionObj = function.function(); DevToolsFunctionInfo info(functionObj); ScriptState* scriptState = m_injectedScriptObject.scriptState(); bool evalIsDisabled = false; if (scriptState) { evalIsDisabled = !scriptState->evalEnabled(); // Temporarily enable allow evals for inspector. if (evalIsDisabled) scriptState->setEvalEnabled(true); } ScriptValue resultValue = function.call(hadException); if (evalIsDisabled) scriptState->setEvalEnabled(false); return resultValue; }