582de025d8
A break may cause the session disconnect (and therefore agents destruction) on a nested message loop. The runtime agent code is generally prepared to handle this during evaluate, but the code outside of it may be not. Besides, having a break before the console API installed is generally not what user wants or expects, so just disable all breaks while installing the API. Bug: chromium:1122487 Change-Id: I1d40f5007f2e1e4ec07a50ef57988513d0309b7e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2437383 Commit-Queue: Andrey Kosyakov <caseq@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#70209}
14 lines
527 B
JavaScript
14 lines
527 B
JavaScript
// Copyright 2017 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
let {session, contextGroup, Protocol} = InspectorTest.start('Check destroying agent inside of breakProgram');
|
|
|
|
(async function test(){
|
|
await Protocol.Debugger.enable();
|
|
Protocol.Runtime.evaluate({expression: 'inspector.breakProgram(\'\', \'{}\')'});
|
|
await Protocol.Debugger.oncePaused();
|
|
session.disconnect();
|
|
InspectorTest.quitImmediately();
|
|
})();
|