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 3056 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3067 HandleScope scope(isolate_); | 3067 HandleScope scope(isolate_); |
3068 DebugScope debug_scope(this); | 3068 DebugScope debug_scope(this); |
3069 if (debug_scope.failed()) return; | 3069 if (debug_scope.failed()) return; |
3070 | 3070 |
3071 // Notify the debug event listeners. Indicate auto continue if the break was | 3071 // Notify the debug event listeners. Indicate auto continue if the break was |
3072 // a debug command break. | 3072 // a debug command break. |
3073 OnDebugBreak(isolate_->factory()->undefined_value(), debug_command_only); | 3073 OnDebugBreak(isolate_->factory()->undefined_value(), debug_command_only); |
3074 } | 3074 } |
3075 | 3075 |
3076 | 3076 |
3077 DebugScope::DebugScope(Debug* debug) : debug_(debug), | 3077 DebugScope::DebugScope(Debug* debug) |
3078 prev_(debug->debugger_entry()), | 3078 : debug_(debug), |
3079 save_(debug_->isolate_) { | 3079 prev_(debug->debugger_entry()), |
| 3080 save_(debug_->isolate_), |
| 3081 no_termination_exceptons_(debug_->isolate_, |
| 3082 StackGuard::TERMINATE_EXECUTION) { |
3080 // Link recursive debugger entry. | 3083 // Link recursive debugger entry. |
3081 debug_->thread_local_.current_debug_scope_ = this; | 3084 debug_->thread_local_.current_debug_scope_ = this; |
3082 | 3085 |
3083 // Store the previous break id and frame id. | 3086 // Store the previous break id and frame id. |
3084 break_id_ = debug_->break_id(); | 3087 break_id_ = debug_->break_id(); |
3085 break_frame_id_ = debug_->break_frame_id(); | 3088 break_frame_id_ = debug_->break_frame_id(); |
3086 | 3089 |
3087 // Create the new break info. If there is no JavaScript frames there is no | 3090 // Create the new break info. If there is no JavaScript frames there is no |
3088 // break frame id. | 3091 // break frame id. |
3089 JavaScriptFrameIterator it(isolate()); | 3092 JavaScriptFrameIterator it(isolate()); |
(...skipping 281 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3371 logger_->DebugEvent("Put", message.text()); | 3374 logger_->DebugEvent("Put", message.text()); |
3372 } | 3375 } |
3373 | 3376 |
3374 | 3377 |
3375 void LockingCommandMessageQueue::Clear() { | 3378 void LockingCommandMessageQueue::Clear() { |
3376 base::LockGuard<base::Mutex> lock_guard(&mutex_); | 3379 base::LockGuard<base::Mutex> lock_guard(&mutex_); |
3377 queue_.Clear(); | 3380 queue_.Clear(); |
3378 } | 3381 } |
3379 | 3382 |
3380 } } // namespace v8::internal | 3383 } } // namespace v8::internal |
OLD | NEW |