blob: 6d65861fc7b1628a1887b103fd2ef4d8c46d5d4d [file] [log] [blame]
Ben Murdoch4a90d5f2016-03-22 12:00:34 +00001// Copyright 2014 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5// Flags: --expose-debug-as debug --debug-eval-readonly-locals
6
7Debug = debug.Debug
8var exception = null;
9var break_count = 0;
10
11var f = null;
12var i = null;
13function listener(event, exec_state, event_data, data) {
14 try {
15 if (event == Debug.DebugEvent.Break) {
16 var frameMirror = exec_state.frame(0);
17
18 var i = frameMirror.evaluate('f = function() { i = 5; }, f(), i').value();
19 assertEquals(5, i);
20 }
21 } catch(e) {
22 exception = e;
23 print(e, e.stack);
24 }
25};
26
27Debug.setListener(listener);
28
29(function (){
30
31 var i = 0;
32
33 try {
34 throw new Error();
35 } catch (e) {
36 assertEquals(0, i);
37 debugger;
38 assertEquals(0, i);
39 }
40}());
41
42assertNull(exception);
43
44assertNull(i);
45f();
46assertNull(i);
47
48Debug.setListener(null);