| Index: runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
|
| diff --git a/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart b/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
|
| index e83c925947ef58579db493233f0b14d078dc7b23..115e361a32c9b0b09ae1e525cc66d00597b30b19 100644
|
| --- a/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
|
| +++ b/runtime/bin/vmservice/client/lib/src/observatory/location_manager.dart
|
| @@ -11,10 +11,13 @@ class LocationManager extends Observable {
|
| static const int InvalidIsolateId = 0;
|
| static const String defaultHash = '#/isolates/';
|
| static final RegExp currentIsolateMatcher = new RegExp(r"#/isolates/\d+");
|
| + static final RegExp currentIsolateProfileMatcher =
|
| + new RegExp(r'#/isolates/\d+/profile');
|
|
|
| ObservatoryApplication _application;
|
| ObservatoryApplication get application => _application;
|
|
|
| + @observable bool profile = false;
|
| @observable String currentHash = '';
|
| @observable Uri currentHashUri;
|
| void init() {
|
| @@ -77,7 +80,12 @@ class LocationManager extends Observable {
|
| // Chomp off the #
|
| String requestUrl = currentHash.substring(1);
|
| currentHashUri = Uri.parse(requestUrl);
|
| - application.requestManager.get(requestUrl);
|
| + if (currentIsolateProfileMatcher.hasMatch(currentHash)) {
|
| + // We do not automatically fetch profile data.
|
| + profile = true;
|
| + } else {
|
| + application.requestManager.get(requestUrl);
|
| + }
|
| }
|
|
|
| /// Create a request for [l] on the current isolate.
|
|
|