| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. | 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, t
rue); | 144 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, t
rue); |
| 145 ++m_capturingStackTracesCount; | 145 ++m_capturingStackTracesCount; |
| 146 } | 146 } |
| 147 | 147 |
| 148 void V8InspectorImpl::disableStackCapturingIfNeeded() | 148 void V8InspectorImpl::disableStackCapturingIfNeeded() |
| 149 { | 149 { |
| 150 if (!(--m_capturingStackTracesCount)) | 150 if (!(--m_capturingStackTracesCount)) |
| 151 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, f
alse); | 151 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, f
alse); |
| 152 } | 152 } |
| 153 | 153 |
| 154 void V8InspectorImpl::muteExceptions(int contextGroupId) |
| 155 { |
| 156 m_muteExceptionsMap[contextGroupId]++; |
| 157 } |
| 158 |
| 159 void V8InspectorImpl::unmuteExceptions(int contextGroupId) |
| 160 { |
| 161 m_muteExceptionsMap[contextGroupId]--; |
| 162 } |
| 163 |
| 154 V8ConsoleMessageStorage* V8InspectorImpl::ensureConsoleMessageStorage(int contex
tGroupId) | 164 V8ConsoleMessageStorage* V8InspectorImpl::ensureConsoleMessageStorage(int contex
tGroupId) |
| 155 { | 165 { |
| 156 ConsoleStorageMap::iterator storageIt = m_consoleStorageMap.find(contextGrou
pId); | 166 ConsoleStorageMap::iterator storageIt = m_consoleStorageMap.find(contextGrou
pId); |
| 157 if (storageIt == m_consoleStorageMap.end()) | 167 if (storageIt == m_consoleStorageMap.end()) |
| 158 storageIt = m_consoleStorageMap.insert(std::make_pair(contextGroupId, wr
apUnique(new V8ConsoleMessageStorage(this, contextGroupId)))).first; | 168 storageIt = m_consoleStorageMap.insert(std::make_pair(contextGroupId, wr
apUnique(new V8ConsoleMessageStorage(this, contextGroupId)))).first; |
| 159 return storageIt->second.get(); | 169 return storageIt->second.get(); |
| 160 } | 170 } |
| 161 | 171 |
| 162 std::unique_ptr<V8StackTrace> V8InspectorImpl::createStackTrace(v8::Local<v8::St
ackTrace> stackTrace) | 172 std::unique_ptr<V8StackTrace> V8InspectorImpl::createStackTrace(v8::Local<v8::St
ackTrace> stackTrace) |
| 163 { | 173 { |
| (...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 224 | 234 |
| 225 SessionMap::iterator iter = m_sessions.find(contextGroupId); | 235 SessionMap::iterator iter = m_sessions.find(contextGroupId); |
| 226 if (iter != m_sessions.end()) | 236 if (iter != m_sessions.end()) |
| 227 iter->second->runtimeAgent()->reportExecutionContextDestroyed(inspectedC
ontext); | 237 iter->second->runtimeAgent()->reportExecutionContextDestroyed(inspectedC
ontext); |
| 228 discardInspectedContext(contextGroupId, contextId); | 238 discardInspectedContext(contextGroupId, contextId); |
| 229 } | 239 } |
| 230 | 240 |
| 231 void V8InspectorImpl::resetContextGroup(int contextGroupId) | 241 void V8InspectorImpl::resetContextGroup(int contextGroupId) |
| 232 { | 242 { |
| 233 m_consoleStorageMap.erase(contextGroupId); | 243 m_consoleStorageMap.erase(contextGroupId); |
| 244 m_muteExceptionsMap.erase(contextGroupId); |
| 234 SessionMap::iterator session = m_sessions.find(contextGroupId); | 245 SessionMap::iterator session = m_sessions.find(contextGroupId); |
| 235 if (session != m_sessions.end()) | 246 if (session != m_sessions.end()) |
| 236 session->second->reset(); | 247 session->second->reset(); |
| 237 m_contexts.erase(contextGroupId); | 248 m_contexts.erase(contextGroupId); |
| 238 } | 249 } |
| 239 | 250 |
| 240 void V8InspectorImpl::willExecuteScript(v8::Local<v8::Context> context, int scri
ptId) | 251 void V8InspectorImpl::willExecuteScript(v8::Local<v8::Context> context, int scri
ptId) |
| 241 { | 252 { |
| 242 if (V8DebuggerAgentImpl* agent = enabledDebuggerAgentForGroup(V8Debugger::ge
tGroupId(context))) | 253 if (V8DebuggerAgentImpl* agent = enabledDebuggerAgentForGroup(V8Debugger::ge
tGroupId(context))) |
| 243 agent->willExecuteScript(scriptId); | 254 agent->willExecuteScript(scriptId); |
| (...skipping 11 matching lines...) Expand all Loading... |
| 255 } | 266 } |
| 256 | 267 |
| 257 void V8InspectorImpl::idleFinished() | 268 void V8InspectorImpl::idleFinished() |
| 258 { | 269 { |
| 259 m_isolate->GetCpuProfiler()->SetIdle(false); | 270 m_isolate->GetCpuProfiler()->SetIdle(false); |
| 260 } | 271 } |
| 261 | 272 |
| 262 unsigned V8InspectorImpl::exceptionThrown(v8::Local<v8::Context> context, const
String16& message, v8::Local<v8::Value> exception, const String16& detailedMessa
ge, const String16& url, unsigned lineNumber, unsigned columnNumber, std::unique
_ptr<V8StackTrace> stackTrace, int scriptId) | 273 unsigned V8InspectorImpl::exceptionThrown(v8::Local<v8::Context> context, const
String16& message, v8::Local<v8::Value> exception, const String16& detailedMessa
ge, const String16& url, unsigned lineNumber, unsigned columnNumber, std::unique
_ptr<V8StackTrace> stackTrace, int scriptId) |
| 263 { | 274 { |
| 264 int contextGroupId = V8Debugger::getGroupId(context); | 275 int contextGroupId = V8Debugger::getGroupId(context); |
| 265 if (!contextGroupId) | 276 if (!contextGroupId || m_muteExceptionsMap[contextGroupId]) |
| 266 return 0; | 277 return 0; |
| 267 std::unique_ptr<V8StackTraceImpl> stackTraceImpl = wrapUnique(static_cast<V8
StackTraceImpl*>(stackTrace.release())); | 278 std::unique_ptr<V8StackTraceImpl> stackTraceImpl = wrapUnique(static_cast<V8
StackTraceImpl*>(stackTrace.release())); |
| 268 unsigned exceptionId = ++m_lastExceptionId; | 279 unsigned exceptionId = ++m_lastExceptionId; |
| 269 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF
orException(m_client->currentTimeMS(), detailedMessage, url, lineNumber, columnN
umber, std::move(stackTraceImpl), scriptId, m_isolate, message, V8Debugger::cont
extId(context), exception, exceptionId); | 280 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF
orException(m_client->currentTimeMS(), detailedMessage, url, lineNumber, columnN
umber, std::move(stackTraceImpl), scriptId, m_isolate, message, V8Debugger::cont
extId(context), exception, exceptionId); |
| 270 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes
sage)); | 281 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes
sage)); |
| 271 return exceptionId; | 282 return exceptionId; |
| 272 } | 283 } |
| 273 | 284 |
| 274 void V8InspectorImpl::exceptionRevoked(v8::Local<v8::Context> context, unsigned
exceptionId, const String16& message) | 285 void V8InspectorImpl::exceptionRevoked(v8::Local<v8::Context> context, unsigned
exceptionId, const String16& message) |
| 275 { | 286 { |
| (...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 335 | 346 |
| 336 V8InspectorSessionImpl* V8InspectorImpl::sessionForContextGroup(int contextGroup
Id) | 347 V8InspectorSessionImpl* V8InspectorImpl::sessionForContextGroup(int contextGroup
Id) |
| 337 { | 348 { |
| 338 if (!contextGroupId) | 349 if (!contextGroupId) |
| 339 return nullptr; | 350 return nullptr; |
| 340 SessionMap::iterator iter = m_sessions.find(contextGroupId); | 351 SessionMap::iterator iter = m_sessions.find(contextGroupId); |
| 341 return iter == m_sessions.end() ? nullptr : iter->second; | 352 return iter == m_sessions.end() ? nullptr : iter->second; |
| 342 } | 353 } |
| 343 | 354 |
| 344 } // namespace blink | 355 } // namespace blink |
| OLD | NEW |