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

Unified Diff: runtime/observatory/lib/src/service/object.dart

Issue 2523053002: Implement rewind: drop one or more frames from the debugger. (Closed)
Patch Set: code review 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 side-by-side diff with in-line comments
Download patch
Index: runtime/observatory/lib/src/service/object.dart
diff --git a/runtime/observatory/lib/src/service/object.dart b/runtime/observatory/lib/src/service/object.dart
index c638dd90d9f4a0bf88b162f28d10e2337f86bc70..13202aa8cf7fea6a232f369d56469de977c2e3a4 100644
--- a/runtime/observatory/lib/src/service/object.dart
+++ b/runtime/observatory/lib/src/service/object.dart
@@ -42,11 +42,13 @@ class ServerRpcException extends RpcException implements M.RequestException {
static const kStreamNotSubscribed = 104;
static const kIsolateMustBeRunnable = 105;
static const kIsolateMustBePaused = 106;
+ static const kCannotResume = 107;
static const kIsolateIsReloading = 1000;
static const kFileSystemAlreadyExists = 1001;
static const kFileSystemDoesNotExist = 1002;
static const kFileDoesNotExist = 1003;
static const kIsolateReloadFailed = 1004;
+ static const kIsolateReloadBarred = 1005;
int code;
Map data;
@@ -1279,7 +1281,6 @@ class Isolate extends ServiceObjectOwner implements M.Isolate {
bool loading = true;
bool runnable = false;
bool ioEnabled = false;
- bool reloading = false;
M.IsolateStatus get status {
if (paused) {
return M.IsolateStatus.paused;
@@ -1344,13 +1345,12 @@ class Isolate extends ServiceObjectOwner implements M.Isolate {
params['pause'] = pause;
}
return invokeRpc('reloadSources', params).then((result) {
- reloading = true;
+ _cache.clear();
return result;
});
}
void _handleIsolateReloadEvent(ServiceEvent event) {
- reloading = false;
if (event.reloadError != null) {
// Failure.
print('Reload failed: ${event.reloadError}');
@@ -1768,6 +1768,10 @@ class Isolate extends ServiceObjectOwner implements M.Isolate {
return invokeRpc('resume', {'step': 'Out'});
}
+ Future rewind(int count) {
+ return invokeRpc('resume', {'step': 'Rewind', 'frameIndex': count});
+ }
+
Future setName(String newName) {
return invokeRpc('setName', {'name': newName});
}
« no previous file with comments | « runtime/observatory/lib/src/elements/debugger.dart ('k') | runtime/observatory/tests/service/pause_idle_isolate_test.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698