Changeset 65068 in webkit
- Timestamp:
- Aug 10, 2010 5:42:37 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r65067 r65068 1 2010-08-10 Yury Semikhatsky <yurys@chromium.org> 2 3 Reviewed by Pavel Feldman. 4 5 Web Inspector, Chromium: reloading of inspected page hits assert in InspectorController::enableDebuggerFromFrontend() 6 https://bugs.webkit.org/show_bug.cgi?id=43780 7 8 * inspector/CodeGeneratorInspector.pm: 9 * inspector/InspectorController.cpp: 10 (WebCore::InspectorController::enableDebuggerFromFrontend): 11 * inspector/InspectorController.h: 12 (WebCore::InspectorController::hasFrontend): 13 * inspector/InspectorDebuggerAgent.cpp: 14 (WebCore::InspectorDebuggerAgent::create): 15 (WebCore::InspectorDebuggerAgent::InspectorDebuggerAgent): 16 (WebCore::InspectorDebuggerAgent::setPauseOnExceptionsState): 17 (WebCore::InspectorDebuggerAgent::didParseSource): 18 (WebCore::InspectorDebuggerAgent::failedToParseSource): 19 (WebCore::InspectorDebuggerAgent::didPause): 20 (WebCore::InspectorDebuggerAgent::didContinue): 21 * inspector/InspectorDebuggerAgent.h: 22 1 23 2010-08-10 Tor Arne Vestbø <tor.arne.vestbo@nokia.com> 2 24 -
trunk/WebCore/inspector/CodeGeneratorInspector.pm
r65058 r65068 207 207 my @backendHead; 208 208 push(@backendHead, " ${backendClassName}(InspectorController* inspectorController) : m_inspectorController(inspectorController) { }"); 209 push(@backendHead, " RemoteInspectorFrontend* inspectorFrontend() const { return m_inspectorController->remoteInspectorFrontend(); }");210 209 push(@backendHead, " void reportProtocolError(const long callId, const String& method, const String& errorText) const;"); 211 210 push(@backendHead, " void dispatch(const String& message);"); … … 353 352 push(@function, ""); 354 353 push(@function, " // use InspectorFrontend as a marker of WebInspector availability"); 355 push(@function, " if (m_inspectorController-> remoteInspectorFrontend()) {");354 push(@function, " if (m_inspectorController->hasFrontend()) {"); 356 355 push(@function, " RefPtr<InspectorArray> arguments = InspectorArray::create();"); 357 356 push(@function, " arguments->pushString(\"processResponse\");"); -
trunk/WebCore/inspector/InspectorController.cpp
r65053 r65068 1625 1625 ASSERT(m_inspectedPage); 1626 1626 1627 m_debuggerAgent = InspectorDebuggerAgent::create(this );1627 m_debuggerAgent = InspectorDebuggerAgent::create(this, m_remoteFrontend.get()); 1628 1628 1629 1629 m_remoteFrontend->debuggerWasEnabled(); -
trunk/WebCore/inspector/InspectorController.h
r65053 r65068 208 208 const ResourcesMap& resources() const { return m_resources; } 209 209 InspectorResource* resourceForURL(const String& url); 210 RemoteInspectorFrontend* remoteInspectorFrontend() { return m_remoteFrontend.get(); }210 bool hasFrontend() const { return m_remoteFrontend; } 211 211 212 212 void drawNodeHighlight(GraphicsContext&) const; -
trunk/WebCore/inspector/InspectorDebuggerAgent.cpp
r64986 r65068 47 47 } 48 48 49 PassOwnPtr<InspectorDebuggerAgent> InspectorDebuggerAgent::create(InspectorController* inspectorController )50 { 51 OwnPtr<InspectorDebuggerAgent> agent = adoptPtr(new InspectorDebuggerAgent(inspectorController ));49 PassOwnPtr<InspectorDebuggerAgent> InspectorDebuggerAgent::create(InspectorController* inspectorController, RemoteInspectorFrontend* remoteFrontend) 50 { 51 OwnPtr<InspectorDebuggerAgent> agent = adoptPtr(new InspectorDebuggerAgent(inspectorController, remoteFrontend)); 52 52 ScriptDebugServer::shared().clearBreakpoints(); 53 53 ScriptDebugServer::shared().addListener(agent.get(), inspectorController->inspectedPage()); … … 55 55 } 56 56 57 InspectorDebuggerAgent::InspectorDebuggerAgent(InspectorController* inspectorController )57 InspectorDebuggerAgent::InspectorDebuggerAgent(InspectorController* inspectorController, RemoteInspectorFrontend* remoteFrontend) 58 58 : m_inspectorController(inspectorController) 59 , m_remoteFrontend(remoteFrontend) 59 60 , m_pausedScriptState(0) 60 61 , m_breakpointsLoaded(false) … … 167 168 { 168 169 ScriptDebugServer::shared().setPauseOnExceptionsState(static_cast<ScriptDebugServer::PauseOnExceptionsState>(pauseState)); 169 if (remoteFrontend()) 170 remoteFrontend()->updatePauseOnExceptionsState(ScriptDebugServer::shared().pauseOnExceptionsState()); 170 m_remoteFrontend->updatePauseOnExceptionsState(ScriptDebugServer::shared().pauseOnExceptionsState()); 171 171 } 172 172 … … 247 247 { 248 248 // Don't send script content to the front end until it's really needed. 249 remoteFrontend()->parsedScriptSource(sourceID, url, "", firstLine, worldType);249 m_remoteFrontend->parsedScriptSource(sourceID, url, "", firstLine, worldType); 250 250 251 251 m_scriptIDToContent.set(sourceID, data); … … 265 265 if (!success) 266 266 continue; 267 remoteFrontend()->restoredBreakpoint(sourceID, url, actualLineNumber, breakpointIt->second.enabled, breakpointIt->second.condition);267 m_remoteFrontend->restoredBreakpoint(sourceID, url, actualLineNumber, breakpointIt->second.enabled, breakpointIt->second.condition); 268 268 String breakpointId = formatBreakpointId(sourceID, actualLineNumber); 269 269 m_breakpointsMapping.set(breakpointId, lineNumber); … … 275 275 void InspectorDebuggerAgent::failedToParseSource(const String& url, const String& data, int firstLine, int errorLine, const String& errorMessage) 276 276 { 277 remoteFrontend()->failedToParseScriptSource(url, data, firstLine, errorLine, errorMessage);277 m_remoteFrontend->failedToParseScriptSource(url, data, firstLine, errorLine, errorMessage); 278 278 } 279 279 … … 283 283 m_pausedScriptState = scriptState; 284 284 RefPtr<InspectorValue> callFrames = currentCallFrames(); 285 remoteFrontend()->pausedScript(callFrames.get());285 m_remoteFrontend->pausedScript(callFrames.get()); 286 286 } 287 287 … … 289 289 { 290 290 m_pausedScriptState = 0; 291 remoteFrontend()->resumedScript(); 292 } 293 294 RemoteInspectorFrontend* InspectorDebuggerAgent::remoteFrontend() const 295 { 296 return m_inspectorController->remoteInspectorFrontend(); 291 m_remoteFrontend->resumedScript(); 297 292 } 298 293 -
trunk/WebCore/inspector/InspectorDebuggerAgent.h
r65021 r65068 48 48 class InspectorDebuggerAgent : public ScriptDebugListener, public Noncopyable { 49 49 public: 50 static PassOwnPtr<InspectorDebuggerAgent> create(InspectorController* );50 static PassOwnPtr<InspectorDebuggerAgent> create(InspectorController*, RemoteInspectorFrontend*); 51 51 virtual ~InspectorDebuggerAgent(); 52 52 … … 74 74 75 75 private: 76 InspectorDebuggerAgent(InspectorController* );76 InspectorDebuggerAgent(InspectorController*, RemoteInspectorFrontend*); 77 77 78 78 PassRefPtr<InspectorValue> currentCallFrames(); … … 86 86 virtual void didContinue(); 87 87 88 RemoteInspectorFrontend* remoteFrontend() const;89 90 88 InspectorController* m_inspectorController; 89 RemoteInspectorFrontend* m_remoteFrontend; 91 90 ScriptState* m_pausedScriptState; 92 91 HashMap<String, String> m_sourceIDToURL; -
trunk/WebKit/chromium/ChangeLog
r65063 r65068 1 2010-08-10 Yury Semikhatsky <yurys@chromium.org> 2 3 Reviewed by Pavel Feldman. 4 5 Web Inspector, Chromium: reloading of inspected page hits assert in InspectorController::enableDebuggerFromFrontend() 6 https://bugs.webkit.org/show_bug.cgi?id=43780 7 8 * src/WebDevToolsAgentImpl.cpp: 9 (WebKit::WebDevToolsAgentImpl::setRuntimeFeatureEnabled): 10 1 11 2010-08-10 Hans Wennborg <hans@chromium.org> 2 12 -
trunk/WebKit/chromium/src/WebDevToolsAgentImpl.cpp
r65057 r65068 305 305 else 306 306 ic->disableResourceTracking(false /* not sticky */); 307 } else if (feature == kFrontendConnectedFeatureName && enabled )307 } else if (feature == kFrontendConnectedFeatureName && enabled && !inspectorController()->hasFrontend()) 308 308 frontendLoaded(); 309 309 }
Note: See TracChangeset
for help on using the changeset viewer.