Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(32)

Side by Side Diff: Source/core/inspector/InspectorDebuggerAgent.cpp

Issue 1249013002: DevTools: simplify setScriptSource and restartFrame return values (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Apple Inc. All rights reserved. 2 * Copyright (C) 2010 Apple Inc. All rights reserved.
3 * Copyright (C) 2013 Google Inc. All rights reserved. 3 * Copyright (C) 2013 Google Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 8 *
9 * 1. Redistributions of source code must retain the above copyright 9 * 1. Redistributions of source code must retain the above copyright
10 * notice, this list of conditions and the following disclaimer. 10 * notice, this list of conditions and the following disclaimer.
(...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 607
608 void InspectorDebuggerAgent::searchInContent(ErrorString* error, const String& s criptId, const String& query, const bool* const optionalCaseSensitive, const boo l* const optionalIsRegex, RefPtr<Array<TypeBuilder::Debugger::SearchMatch>>& res ults) 608 void InspectorDebuggerAgent::searchInContent(ErrorString* error, const String& s criptId, const String& query, const bool* const optionalCaseSensitive, const boo l* const optionalIsRegex, RefPtr<Array<TypeBuilder::Debugger::SearchMatch>>& res ults)
609 { 609 {
610 ScriptsMap::iterator it = m_scripts.find(scriptId); 610 ScriptsMap::iterator it = m_scripts.find(scriptId);
611 if (it != m_scripts.end()) 611 if (it != m_scripts.end())
612 results = ContentSearchUtils::searchInTextByLines(it->value.source(), qu ery, asBool(optionalCaseSensitive), asBool(optionalIsRegex)); 612 results = ContentSearchUtils::searchInTextByLines(it->value.source(), qu ery, asBool(optionalCaseSensitive), asBool(optionalIsRegex));
613 else 613 else
614 *error = "No script for id: " + scriptId; 614 *error = "No script for id: " + scriptId;
615 } 615 }
616 616
617 void InspectorDebuggerAgent::setScriptSource(ErrorString* error, RefPtr<TypeBuil der::Debugger::SetScriptSourceError>& errorData, const String& scriptId, const S tring& newContent, const bool* const preview, RefPtr<Array<CallFrame> >& newCall Frames, RefPtr<JSONObject>& result, RefPtr<StackTrace>& asyncStackTrace) 617 void InspectorDebuggerAgent::setScriptSource(ErrorString* error, RefPtr<TypeBuil der::Debugger::SetScriptSourceError>& errorData, const String& scriptId, const S tring& newContent, const bool* const preview, RefPtr<Array<CallFrame>>& newCallF rames, TypeBuilder::OptOutput<bool>* stackChanged, RefPtr<StackTrace>& asyncStac kTrace)
618 { 618 {
619 if (!checkEnabled(error)) 619 if (!checkEnabled(error))
620 return; 620 return;
621 if (!debugger().setScriptSource(scriptId, newContent, asBool(preview), error , errorData, &m_currentCallStack, &result)) 621 if (!debugger().setScriptSource(scriptId, newContent, asBool(preview), error , errorData, &m_currentCallStack, stackChanged))
622 return; 622 return;
623 623
624 newCallFrames = currentCallFrames(); 624 newCallFrames = currentCallFrames();
625 asyncStackTrace = currentAsyncStackTrace(); 625 asyncStackTrace = currentAsyncStackTrace();
626 626
627 ScriptsMap::iterator it = m_scripts.find(scriptId); 627 ScriptsMap::iterator it = m_scripts.find(scriptId);
628 if (it == m_scripts.end()) 628 if (it == m_scripts.end())
629 return; 629 return;
630 String url = it->value.url(); 630 String url = it->value.url();
631 if (url.isEmpty()) 631 if (url.isEmpty())
632 return; 632 return;
633 m_editedScripts.set(url, newContent); 633 m_editedScripts.set(url, newContent);
634 } 634 }
635 635
636 void InspectorDebuggerAgent::restartFrame(ErrorString* errorString, const String & callFrameId, RefPtr<Array<CallFrame> >& newCallFrames, RefPtr<JSONObject>& res ult, RefPtr<StackTrace>& asyncStackTrace) 636 void InspectorDebuggerAgent::restartFrame(ErrorString* errorString, const String & callFrameId, RefPtr<Array<CallFrame>>& newCallFrames, RefPtr<StackTrace>& asyn cStackTrace)
637 { 637 {
638 if (!isPaused() || m_currentCallStack.IsEmpty()) { 638 if (!isPaused() || m_currentCallStack.IsEmpty()) {
639 *errorString = "Attempt to access callframe when debugger is not on paus e"; 639 *errorString = "Attempt to access callframe when debugger is not on paus e";
640 return; 640 return;
641 } 641 }
642 OwnPtr<RemoteCallFrameId> remoteId = RemoteCallFrameId::parse(callFrameId); 642 OwnPtr<RemoteCallFrameId> remoteId = RemoteCallFrameId::parse(callFrameId);
643 if (!remoteId) { 643 if (!remoteId) {
644 *errorString = "Invalid call frame id"; 644 *errorString = "Invalid call frame id";
645 return; 645 return;
646 } 646 }
647 InjectedScript injectedScript = m_injectedScriptManager->findInjectedScript( remoteId.get()); 647 InjectedScript injectedScript = m_injectedScriptManager->findInjectedScript( remoteId.get());
648 if (injectedScript.isEmpty()) { 648 if (injectedScript.isEmpty()) {
649 *errorString = "Inspected frame has gone"; 649 *errorString = "Inspected frame has gone";
650 return; 650 return;
651 } 651 }
652 652
653 v8::HandleScope scope(m_isolate); 653 v8::HandleScope scope(m_isolate);
654 v8::Local<v8::Object> callStack = m_currentCallStack.Get(m_isolate); 654 v8::Local<v8::Object> callStack = m_currentCallStack.Get(m_isolate);
655 injectedScript.restartFrame(errorString, callStack, callFrameId, &result); 655 injectedScript.restartFrame(errorString, callStack, callFrameId);
656 m_currentCallStack.Reset(m_isolate, debugger().currentCallFrames()); 656 m_currentCallStack.Reset(m_isolate, debugger().currentCallFrames());
657 newCallFrames = currentCallFrames(); 657 newCallFrames = currentCallFrames();
658 asyncStackTrace = currentAsyncStackTrace(); 658 asyncStackTrace = currentAsyncStackTrace();
659 } 659 }
660 660
661 void InspectorDebuggerAgent::getScriptSource(ErrorString* error, const String& s criptId, String* scriptSource) 661 void InspectorDebuggerAgent::getScriptSource(ErrorString* error, const String& s criptId, String* scriptSource)
662 { 662 {
663 if (!checkEnabled(error)) 663 if (!checkEnabled(error))
664 return; 664 return;
665 ScriptsMap::iterator it = m_scripts.find(scriptId); 665 ScriptsMap::iterator it = m_scripts.find(scriptId);
(...skipping 1119 matching lines...) Expand 10 before | Expand all | Expand 10 after
1785 RefPtr<ExceptionDetails> exceptionDetails = ExceptionDetails::create().setTe xt(toCoreStringWithUndefinedOrNullCheck(message->Get())); 1785 RefPtr<ExceptionDetails> exceptionDetails = ExceptionDetails::create().setTe xt(toCoreStringWithUndefinedOrNullCheck(message->Get()));
1786 exceptionDetails->setLine(message->GetLineNumber()); 1786 exceptionDetails->setLine(message->GetLineNumber());
1787 exceptionDetails->setColumn(message->GetStartColumn()); 1787 exceptionDetails->setColumn(message->GetStartColumn());
1788 v8::Local<v8::StackTrace> messageStackTrace = message->GetStackTrace(); 1788 v8::Local<v8::StackTrace> messageStackTrace = message->GetStackTrace();
1789 if (!messageStackTrace.IsEmpty() && messageStackTrace->GetFrameCount() > 0) 1789 if (!messageStackTrace.IsEmpty() && messageStackTrace->GetFrameCount() > 0)
1790 exceptionDetails->setStackTrace(createScriptCallStack(isolate, messageSt ackTrace, messageStackTrace->GetFrameCount())->buildInspectorArray()); 1790 exceptionDetails->setStackTrace(createScriptCallStack(isolate, messageSt ackTrace, messageStackTrace->GetFrameCount())->buildInspectorArray());
1791 return exceptionDetails.release(); 1791 return exceptionDetails.release();
1792 } 1792 }
1793 1793
1794 } // namespace blink 1794 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698