OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/v8.h" | 5 #include "src/v8.h" |
6 | 6 |
7 #include "src/api.h" | 7 #include "src/api.h" |
8 #include "src/arguments.h" | 8 #include "src/arguments.h" |
9 #include "src/bootstrapper.h" | 9 #include "src/bootstrapper.h" |
10 #include "src/code-stubs.h" | 10 #include "src/code-stubs.h" |
(...skipping 3029 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3040 HandleScope scope(isolate_); | 3040 HandleScope scope(isolate_); |
3041 DebugScope debug_scope(this); | 3041 DebugScope debug_scope(this); |
3042 if (debug_scope.failed()) return; | 3042 if (debug_scope.failed()) return; |
3043 | 3043 |
3044 // Notify the debug event listeners. Indicate auto continue if the break was | 3044 // Notify the debug event listeners. Indicate auto continue if the break was |
3045 // a debug command break. | 3045 // a debug command break. |
3046 OnDebugBreak(isolate_->factory()->undefined_value(), debug_command_only); | 3046 OnDebugBreak(isolate_->factory()->undefined_value(), debug_command_only); |
3047 } | 3047 } |
3048 | 3048 |
3049 | 3049 |
3050 DebugScope::DebugScope(Debug* debug) : debug_(debug), | 3050 DebugScope::DebugScope(Debug* debug) |
3051 prev_(debug->debugger_entry()), | 3051 : debug_(debug), |
3052 save_(debug_->isolate_) { | 3052 prev_(debug->debugger_entry()), |
| 3053 save_(debug_->isolate_), |
| 3054 no_termination_exceptons_(debug_->isolate_, |
| 3055 StackGuard::TERMINATE_EXECUTION) { |
3053 // Link recursive debugger entry. | 3056 // Link recursive debugger entry. |
3054 debug_->thread_local_.current_debug_scope_ = this; | 3057 debug_->thread_local_.current_debug_scope_ = this; |
3055 | 3058 |
3056 // Store the previous break id and frame id. | 3059 // Store the previous break id and frame id. |
3057 break_id_ = debug_->break_id(); | 3060 break_id_ = debug_->break_id(); |
3058 break_frame_id_ = debug_->break_frame_id(); | 3061 break_frame_id_ = debug_->break_frame_id(); |
3059 | 3062 |
3060 // Create the new break info. If there is no JavaScript frames there is no | 3063 // Create the new break info. If there is no JavaScript frames there is no |
3061 // break frame id. | 3064 // break frame id. |
3062 JavaScriptFrameIterator it(isolate()); | 3065 JavaScriptFrameIterator it(isolate()); |
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3344 logger_->DebugEvent("Put", message.text()); | 3347 logger_->DebugEvent("Put", message.text()); |
3345 } | 3348 } |
3346 | 3349 |
3347 | 3350 |
3348 void LockingCommandMessageQueue::Clear() { | 3351 void LockingCommandMessageQueue::Clear() { |
3349 LockGuard<Mutex> lock_guard(&mutex_); | 3352 LockGuard<Mutex> lock_guard(&mutex_); |
3350 queue_.Clear(); | 3353 queue_.Clear(); |
3351 } | 3354 } |
3352 | 3355 |
3353 } } // namespace v8::internal | 3356 } } // namespace v8::internal |
OLD | NEW |