Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(121)

Side by Side Diff: src/debug.cc

Issue 325183003: Ignore live_edit_ flag when when dealing with LiveEdit in a debug break. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/debug.h ('k') | src/liveedit.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 868 matching lines...) Expand 10 before | Expand all | Expand 10 after
879 GlobalHandles::Destroy(Handle<Object>::cast(debug_context_).location()); 879 GlobalHandles::Destroy(Handle<Object>::cast(debug_context_).location());
880 debug_context_ = Handle<Context>(); 880 debug_context_ = Handle<Context>();
881 } 881 }
882 882
883 883
884 void Debug::Break(Arguments args, JavaScriptFrame* frame) { 884 void Debug::Break(Arguments args, JavaScriptFrame* frame) {
885 Heap* heap = isolate_->heap(); 885 Heap* heap = isolate_->heap();
886 HandleScope scope(isolate_); 886 HandleScope scope(isolate_);
887 ASSERT(args.length() == 0); 887 ASSERT(args.length() == 0);
888 888
889 if (live_edit_enabled()) { 889 // Initialize LiveEdit.
890 thread_local_.frame_drop_mode_ = LiveEdit::FRAMES_UNTOUCHED; 890 LiveEdit::InitializeThreadLocal(this);
891 }
892 891
893 // Just continue if breaks are disabled or debugger cannot be loaded. 892 // Just continue if breaks are disabled or debugger cannot be loaded.
894 if (break_disabled_) return; 893 if (break_disabled_) return;
895 894
896 // Enter the debugger. 895 // Enter the debugger.
897 DebugScope debug_scope(this); 896 DebugScope debug_scope(this);
898 if (debug_scope.failed()) return; 897 if (debug_scope.failed()) return;
899 898
900 // Postpone interrupt during breakpoint processing. 899 // Postpone interrupt during breakpoint processing.
901 PostponeInterruptsScope postpone(isolate_); 900 PostponeInterruptsScope postpone(isolate_);
(...skipping 1398 matching lines...) Expand 10 before | Expand all | Expand 10 after
2300 } 2299 }
2301 // Move to next in list. 2300 // Move to next in list.
2302 prev = current; 2301 prev = current;
2303 current = current->next(); 2302 current = current->next();
2304 } 2303 }
2305 UNREACHABLE(); 2304 UNREACHABLE();
2306 } 2305 }
2307 2306
2308 2307
2309 void Debug::SetAfterBreakTarget(JavaScriptFrame* frame) { 2308 void Debug::SetAfterBreakTarget(JavaScriptFrame* frame) {
2310 if (live_edit_enabled()) { 2309 after_break_target_ = NULL;
2311 after_break_target_ = 2310
2312 LiveEdit::AfterBreakTarget(thread_local_.frame_drop_mode_, isolate_); 2311 if (LiveEdit::SetAfterBreakTarget(this)) return; // LiveEdit did the job.
2313 if (after_break_target_ != NULL) return; // LiveEdit did the job.
2314 }
2315 2312
2316 HandleScope scope(isolate_); 2313 HandleScope scope(isolate_);
2317 PrepareForBreakPoints(); 2314 PrepareForBreakPoints();
2318 2315
2319 // Get the executing function in which the debug break occurred. 2316 // Get the executing function in which the debug break occurred.
2320 Handle<JSFunction> function(JSFunction::cast(frame->function())); 2317 Handle<JSFunction> function(JSFunction::cast(frame->function()));
2321 Handle<SharedFunctionInfo> shared(function->shared()); 2318 Handle<SharedFunctionInfo> shared(function->shared());
2322 if (!EnsureDebugInfo(shared, function)) { 2319 if (!EnsureDebugInfo(shared, function)) {
2323 // Return if we failed to retrieve the debug info. 2320 // Return if we failed to retrieve the debug info.
2324 return; 2321 return;
(...skipping 1068 matching lines...) Expand 10 before | Expand all | Expand 10 after
3393 logger_->DebugEvent("Put", message.text()); 3390 logger_->DebugEvent("Put", message.text());
3394 } 3391 }
3395 3392
3396 3393
3397 void LockingCommandMessageQueue::Clear() { 3394 void LockingCommandMessageQueue::Clear() {
3398 LockGuard<Mutex> lock_guard(&mutex_); 3395 LockGuard<Mutex> lock_guard(&mutex_);
3399 queue_.Clear(); 3396 queue_.Clear();
3400 } 3397 }
3401 3398
3402 } } // namespace v8::internal 3399 } } // namespace v8::internal
OLDNEW
« no previous file with comments | « src/debug.h ('k') | src/liveedit.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698