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

Unified Diff: pkg/stack_trace/lib/src/frame.dart

Issue 132223003: Code review changes for r31644. (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 11 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: pkg/stack_trace/lib/src/frame.dart
diff --git a/pkg/stack_trace/lib/src/frame.dart b/pkg/stack_trace/lib/src/frame.dart
index 8544c786fe33f56ca2504acd045f98f52d61ee30..7b9c7b1a9add8499daa83464cea726b4e0215e63 100644
--- a/pkg/stack_trace/lib/src/frame.dart
+++ b/pkg/stack_trace/lib/src/frame.dart
@@ -11,14 +11,14 @@ import 'trace.dart';
// #1 Foo._bar (file:///home/nweiz/code/stuff.dart:42:21)
final _vmFrame = new RegExp(
- r'^#\d+\s+([^\s].*) \((.+?):(\d+)(?::(\d+))?\)$');
+ r'^#\d+\s+(\S.*) \((.+?):(\d+)(?::(\d+))?\)$');
// at VW.call$0 (http://pub.dartlang.org/stuff.dart.js:560:28)
// at VW.call$0 (eval as fn
// (http://pub.dartlang.org/stuff.dart.js:560:28), efn:3:28)
// at http://pub.dartlang.org/stuff.dart.js:560:28
final _v8Frame = new RegExp(
- r'^\s*at (?:([^\s].*?)(?: \[as [^\]]+\])? \((.*)\)|(.*))$');
+ r'^\s*at (?:(\S.*?)(?: \[as [^\]]+\])? \((.*)\)|(.*))$');
// http://pub.dartlang.org/stuff.dart.js:560:28
final _v8UrlLocation = new RegExp(r'^(.*):(\d+):(\d+)$');
@@ -28,7 +28,7 @@ final _v8UrlLocation = new RegExp(r'^(.*):(\d+):(\d+)$');
// eval as function (eval as otherFunction
// (http://pub.dartlang.org/stuff.dart.js:560:28))
final _v8EvalLocation = new RegExp(
- r'^eval at (?:[^\s].*?) \((.*)\)(?:, .*?:\d+:\d+)?$');
+ r'^eval at (?:\S.*?) \((.*)\)(?:, .*?:\d+:\d+)?$');
// foo$bar$0@http://pub.dartlang.org/stuff.dart.js:560:28
// http://pub.dartlang.org/stuff.dart.js:560:28
@@ -43,7 +43,7 @@ final _firefoxFrame = new RegExp(
// foo/bar.dart 10:11 in Foo._bar
// http://dartlang.org/foo/bar.dart in Foo._bar
final _friendlyFrame = new RegExp(
- r'^([^\s]+)(?: (\d+)(?::(\d+))?)?\s+([^\d][^\s]*)$');
+ r'^(\S+)(?: (\d+)(?::(\d+))?)?\s+([^\d]\S*)$');
final _initialDot = new RegExp(r"^\.");
@@ -154,8 +154,10 @@ class Frame {
// nesting for each eval performed on that line.
parseLocation(location, member) {
var evalMatch = _v8EvalLocation.firstMatch(location);
- if (evalMatch != null) return parseLocation(evalMatch[1], member);
-
+ while (evalMatch != null) {
+ location = evalMatch[1];
+ evalMatch = _v8EvalLocation.firstMatch(location);
+ }
var urlMatch = _v8UrlLocation.firstMatch(location);
if (urlMatch == null) {
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698