diff --git a/src/d8-debug.cc b/src/d8-debug.cc index 5f3ed766ab..8a3886c676 100644 --- a/src/d8-debug.cc +++ b/src/d8-debug.cc @@ -34,12 +34,21 @@ namespace v8 { -void PrintPrompt() { - printf("dbg> "); +static bool was_running = true; + +void PrintPrompt(bool is_running) { + const char* prompt = is_running? "> " : "dbg> "; + was_running = is_running; + printf("%s", prompt); fflush(stdout); } +void PrintPrompt() { + PrintPrompt(was_running); +} + + void HandleDebugEvent(DebugEvent event, Handle exec_state, Handle event_data, @@ -91,7 +100,7 @@ void HandleDebugEvent(DebugEvent event, bool running = false; while (!running) { char command[kBufferSize]; - PrintPrompt(); + PrintPrompt(running); char* str = fgets(command, kBufferSize, stdin); if (str == NULL) break; @@ -284,7 +293,9 @@ void RemoteDebugger::HandleMessageReceived(char* message) { } else { printf("???\n"); } - PrintPrompt(); + + bool is_running = details->Get(String::New("running"))->ToBoolean()->Value(); + PrintPrompt(is_running); }