| Index: src/inspector/v8-debugger.cc
|
| diff --git a/src/inspector/v8-debugger.cc b/src/inspector/v8-debugger.cc
|
| index 1e9ee03b16adca1109bab4f0a0b2c650f1faeda0..4a9ca5a55a5054c22ba8d61fce511266a81033c2 100644
|
| --- a/src/inspector/v8-debugger.cc
|
| +++ b/src/inspector/v8-debugger.cc
|
| @@ -21,7 +21,7 @@ namespace v8_inspector {
|
|
|
| namespace {
|
|
|
| -static const int kMaxAsyncTaskStacks = 1024 * 1024;
|
| +static const int kMaxAsyncTaskStacks = 128 * 1024;
|
|
|
| inline v8::Local<v8::Boolean> v8Boolean(bool value, v8::Isolate* isolate) {
|
| return value ? v8::True(isolate) : v8::False(isolate);
|
| @@ -1023,6 +1023,18 @@ void V8Debugger::collectOldAsyncStacksIfNeeded() {
|
| }
|
| removeOldAsyncTasks(m_asyncTaskStacks);
|
| removeOldAsyncTasks(m_asyncTaskCreationStacks);
|
| + protocol::HashSet<void*> recurringLeft;
|
| + for (auto task : m_recurringTasks) {
|
| + if (m_asyncTaskStacks.find(task) == m_asyncTaskStacks.end()) continue;
|
| + recurringLeft.insert(task);
|
| + }
|
| + m_recurringTasks.swap(recurringLeft);
|
| + protocol::HashMap<void*, void*> parentLeft;
|
| + for (auto it : m_parentTask) {
|
| + if (m_asyncTaskStacks.find(it.first) == m_asyncTaskStacks.end()) continue;
|
| + parentLeft.insert(it);
|
| + }
|
| + m_parentTask.swap(parentLeft);
|
| }
|
|
|
| void V8Debugger::removeOldAsyncTasks(AsyncTaskToStackTrace& map) {
|
|
|