Title: [191081] trunk/Source/_javascript_Core
- Revision
- 191081
- Author
- commit-qu...@webkit.org
- Date
- 2015-10-14 20:53:49 -0700 (Wed, 14 Oct 2015)
Log Message
REGRESSION: Web Inspector hangs for many seconds when trying to reload page
https://bugs.webkit.org/show_bug.cgi?id=150065
Patch by Joseph Pecoraro <pecor...@apple.com> on 2015-10-14
Reviewed by Mark Lam.
When debugging Web Pages, the same Debugger (PageScriptDebugServer) is
attached to each of the different JSGlobalObjects on the page. This could
mean multiple frames or isolated scripting contexts. Therefore we should
only need to send sourceParsed events to the frontend for scripts within
this new JSGlobalObject, not any JSGlobalObject that has this debugger.
* debugger/Debugger.cpp:
(JSC::Debugger::attach):
Only send sourceParsed events for Scripts in this JSGlobalObject.
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (191080 => 191081)
--- trunk/Source/_javascript_Core/ChangeLog 2015-10-15 01:21:19 UTC (rev 191080)
+++ trunk/Source/_javascript_Core/ChangeLog 2015-10-15 03:53:49 UTC (rev 191081)
@@ -1,5 +1,22 @@
2015-10-14 Joseph Pecoraro <pecor...@apple.com>
+ REGRESSION: Web Inspector hangs for many seconds when trying to reload page
+ https://bugs.webkit.org/show_bug.cgi?id=150065
+
+ Reviewed by Mark Lam.
+
+ When debugging Web Pages, the same Debugger (PageScriptDebugServer) is
+ attached to each of the different JSGlobalObjects on the page. This could
+ mean multiple frames or isolated scripting contexts. Therefore we should
+ only need to send sourceParsed events to the frontend for scripts within
+ this new JSGlobalObject, not any JSGlobalObject that has this debugger.
+
+ * debugger/Debugger.cpp:
+ (JSC::Debugger::attach):
+ Only send sourceParsed events for Scripts in this JSGlobalObject.
+
+2015-10-14 Joseph Pecoraro <pecor...@apple.com>
+
Remove unimplemented methods in CopiedSpace
https://bugs.webkit.org/show_bug.cgi?id=150143
Modified: trunk/Source/_javascript_Core/debugger/Debugger.cpp (191080 => 191081)
--- trunk/Source/_javascript_Core/debugger/Debugger.cpp 2015-10-15 01:21:19 UTC (rev 191080)
+++ trunk/Source/_javascript_Core/debugger/Debugger.cpp 2015-10-15 03:53:49 UTC (rev 191081)
@@ -41,10 +41,10 @@
struct GatherSourceProviders : public MarkedBlock::VoidFunctor {
HashSet<SourceProvider*> sourceProviders;
- JSC::Debugger* m_debugger;
+ JSGlobalObject* m_globalObject;
- GatherSourceProviders(JSC::Debugger* debugger)
- : m_debugger(debugger) { }
+ GatherSourceProviders(JSGlobalObject* globalObject)
+ : m_globalObject(globalObject) { }
IterationStatus operator()(JSCell* cell)
{
@@ -52,7 +52,7 @@
if (!function)
return IterationStatus::Continue;
- if (function->scope()->globalObject()->debugger() != m_debugger)
+ if (function->scope()->globalObject() != m_globalObject)
return IterationStatus::Continue;
if (!function->executable()->isFunctionExecutable())
@@ -143,8 +143,8 @@
globalObject->setDebugger(this);
m_globalObjects.add(globalObject);
- // Call sourceParsed() because it will execute _javascript_ in the inspector.
- GatherSourceProviders gatherSourceProviders(this);
+ // Call sourceParsed because it will execute _javascript_ in the inspector.
+ GatherSourceProviders gatherSourceProviders(globalObject);
{
HeapIterationScope iterationScope(m_vm.heap);
m_vm.heap.objectSpace().forEachLiveCell(iterationScope, gatherSourceProviders);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes