| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2007, 2008 Apple Inc. All rights reserved. |
| 3 * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com> | 3 * Copyright (C) 2008 Matt Lilek <webkit@mattlilek.com> |
| 4 * Copyright (C) 2012 Google Inc. All rights reserved. | 4 * Copyright (C) 2012 Google Inc. All rights reserved. |
| 5 * | 5 * |
| 6 * Redistribution and use in source and binary forms, with or without | 6 * Redistribution and use in source and binary forms, with or without |
| 7 * modification, are permitted provided that the following conditions | 7 * modification, are permitted provided that the following conditions |
| 8 * are met: | 8 * are met: |
| 9 * | 9 * |
| 10 * 1. Redistributions of source code must retain the above copyright | 10 * 1. Redistributions of source code must retain the above copyright |
| (...skipping 14 matching lines...) Expand all Loading... |
| 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND | 25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND |
| 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF |
| 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 29 */ | 29 */ |
| 30 | 30 |
| 31 #include "config.h" | 31 #include "config.h" |
| 32 #include "core/inspector/InjectedScriptManager.h" | 32 #include "core/inspector/InjectedScriptManager.h" |
| 33 | 33 |
| 34 #include "bindings/core/v8/ScriptValue.h" | 34 #include "bindings/core/v8/ScriptValue.h" |
| 35 #include "core/InjectedScriptSource.h" | |
| 36 #include "core/inspector/InjectedScript.h" | 35 #include "core/inspector/InjectedScript.h" |
| 37 #include "core/inspector/InjectedScriptHost.h" | 36 #include "core/inspector/InjectedScriptHost.h" |
| 38 #include "core/inspector/JSONParser.h" | 37 #include "core/inspector/JSONParser.h" |
| 39 #include "platform/JSONValues.h" | 38 #include "platform/JSONValues.h" |
| 39 #include "public/platform/Platform.h" |
| 40 #include "public/platform/WebData.h" |
| 40 #include "wtf/PassOwnPtr.h" | 41 #include "wtf/PassOwnPtr.h" |
| 41 | 42 |
| 42 namespace blink { | 43 namespace blink { |
| 43 | 44 |
| 44 PassOwnPtr<InjectedScriptManager> InjectedScriptManager::createForPage() | 45 PassOwnPtr<InjectedScriptManager> InjectedScriptManager::createForPage() |
| 45 { | 46 { |
| 46 return adoptPtr(new InjectedScriptManager(&InjectedScriptManager::canAccessI
nspectedWindow)); | 47 return adoptPtr(new InjectedScriptManager(&InjectedScriptManager::canAccessI
nspectedWindow)); |
| 47 } | 48 } |
| 48 | 49 |
| 49 PassOwnPtr<InjectedScriptManager> InjectedScriptManager::createForWorker() | 50 PassOwnPtr<InjectedScriptManager> InjectedScriptManager::createForWorker() |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 keys.appendRange(m_idToInjectedScript.keys().begin(), m_idToInjectedScript.k
eys().end()); | 151 keys.appendRange(m_idToInjectedScript.keys().begin(), m_idToInjectedScript.k
eys().end()); |
| 151 for (Vector<int>::iterator k = keys.begin(); k != keys.end(); ++k) { | 152 for (Vector<int>::iterator k = keys.begin(); k != keys.end(); ++k) { |
| 152 IdToInjectedScriptMap::iterator s = m_idToInjectedScript.find(*k); | 153 IdToInjectedScriptMap::iterator s = m_idToInjectedScript.find(*k); |
| 153 if (s != m_idToInjectedScript.end()) | 154 if (s != m_idToInjectedScript.end()) |
| 154 s->value.releaseObjectGroup(objectGroup); // m_idToInjectedScript ma
y change here. | 155 s->value.releaseObjectGroup(objectGroup); // m_idToInjectedScript ma
y change here. |
| 155 } | 156 } |
| 156 } | 157 } |
| 157 | 158 |
| 158 String InjectedScriptManager::injectedScriptSource() | 159 String InjectedScriptManager::injectedScriptSource() |
| 159 { | 160 { |
| 160 return String(reinterpret_cast<const char*>(InjectedScriptSource_js), sizeof
(InjectedScriptSource_js)); | 161 const blink::WebData& injectedScriptSourceResource = blink::Platform::curren
t()->loadResource("InjectedScriptSource.js"); |
| 162 return String(injectedScriptSourceResource.data(), injectedScriptSourceResou
rce.size()); |
| 161 } | 163 } |
| 162 | 164 |
| 163 InjectedScript InjectedScriptManager::injectedScriptFor(ScriptState* inspectedSc
riptState) | 165 InjectedScript InjectedScriptManager::injectedScriptFor(ScriptState* inspectedSc
riptState) |
| 164 { | 166 { |
| 165 ScriptStateToId::iterator it = m_scriptStateToId.find(inspectedScriptState); | 167 ScriptStateToId::iterator it = m_scriptStateToId.find(inspectedScriptState); |
| 166 if (it != m_scriptStateToId.end()) { | 168 if (it != m_scriptStateToId.end()) { |
| 167 IdToInjectedScriptMap::iterator it1 = m_idToInjectedScript.find(it->valu
e); | 169 IdToInjectedScriptMap::iterator it1 = m_idToInjectedScript.find(it->valu
e); |
| 168 if (it1 != m_idToInjectedScript.end()) | 170 if (it1 != m_idToInjectedScript.end()) |
| 169 return it1->value; | 171 return it1->value; |
| 170 } | 172 } |
| 171 | 173 |
| 172 if (!m_inspectedStateAccessCheck(inspectedScriptState)) | 174 if (!m_inspectedStateAccessCheck(inspectedScriptState)) |
| 173 return InjectedScript(); | 175 return InjectedScript(); |
| 174 | 176 |
| 175 int id = injectedScriptIdFor(inspectedScriptState); | 177 int id = injectedScriptIdFor(inspectedScriptState); |
| 176 ScriptValue injectedScriptValue = createInjectedScript(injectedScriptSource(
), inspectedScriptState, id); | 178 ScriptValue injectedScriptValue = createInjectedScript(injectedScriptSource(
), inspectedScriptState, id); |
| 177 InjectedScript result(injectedScriptValue, m_inspectedStateAccessCheck); | 179 InjectedScript result(injectedScriptValue, m_inspectedStateAccessCheck); |
| 178 m_idToInjectedScript.set(id, result); | 180 m_idToInjectedScript.set(id, result); |
| 179 return result; | 181 return result; |
| 180 } | 182 } |
| 181 | 183 |
| 182 } // namespace blink | 184 } // namespace blink |
| 183 | 185 |
| OLD | NEW |