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

Side by Side Diff: runtime/vm/exceptions.cc

Issue 2493353002: DBC: Fix checked mode stack traces (Closed)
Patch Set: Created 4 years, 1 month 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
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/exceptions.h" 5 #include "vm/exceptions.h"
6 6
7 #include "platform/address_sanitizer.h" 7 #include "platform/address_sanitizer.h"
8 8
9 #include "vm/dart_api_impl.h" 9 #include "vm/dart_api_impl.h"
10 #include "vm/dart_entry.h" 10 #include "vm/dart_entry.h"
(...skipping 596 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 if (exception.raw() != isolate->object_store()->out_of_memory() && 607 if (exception.raw() != isolate->object_store()->out_of_memory() &&
608 exception.raw() != isolate->object_store()->stack_overflow()) { 608 exception.raw() != isolate->object_store()->stack_overflow()) {
609 isolate->debugger()->PauseException(exception); 609 isolate->debugger()->PauseException(exception);
610 } 610 }
611 } 611 }
612 // Null object is a valid exception object. 612 // Null object is a valid exception object.
613 ThrowExceptionHelper(thread, exception, Stacktrace::Handle(thread->zone()), 613 ThrowExceptionHelper(thread, exception, Stacktrace::Handle(thread->zone()),
614 false); 614 false);
615 } 615 }
616 616
617
617 void Exceptions::ReThrow(Thread* thread, 618 void Exceptions::ReThrow(Thread* thread,
618 const Instance& exception, 619 const Instance& exception,
619 const Instance& stacktrace) { 620 const Instance& stacktrace) {
620 // Null object is a valid exception object. 621 // Null object is a valid exception object.
621 ThrowExceptionHelper(thread, exception, stacktrace, true); 622 ThrowExceptionHelper(thread, exception, stacktrace, true);
622 } 623 }
623 624
624 625
625 void Exceptions::PropagateError(const Error& error) { 626 void Exceptions::PropagateError(const Error& error) {
626 Thread* thread = Thread::Current(); 627 Thread* thread = Thread::Current();
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
787 class_name = &Symbols::_CompileTimeError(); 788 class_name = &Symbols::_CompileTimeError();
788 break; 789 break;
789 } 790 }
790 791
791 return DartLibraryCalls::InstanceCreate(library, *class_name, 792 return DartLibraryCalls::InstanceCreate(library, *class_name,
792 *constructor_name, arguments); 793 *constructor_name, arguments);
793 } 794 }
794 795
795 796
796 } // namespace dart 797 } // namespace dart
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698