Index: remoting/host/daemon_process.cc |
diff --git a/remoting/host/daemon_process.cc b/remoting/host/daemon_process.cc |
index f76838dda20beed857b86d025086b66ef5ee9a46..9128a91e5860a22997af7f523f9bb08700acfdfe 100644 |
--- a/remoting/host/daemon_process.cc |
+++ b/remoting/host/daemon_process.cc |
@@ -65,6 +65,12 @@ bool DaemonProcess::OnMessageReceived(const IPC::Message& message) { |
CloseDesktopSession) |
IPC_MESSAGE_UNHANDLED(handled = false) |
IPC_END_MESSAGE_MAP() |
+ |
+ if (!handled) { |
+ LOG(ERROR) << "Received unexpected IPC type: " << message.type(); |
+ CrashNetworkProcess(FROM_HERE); |
Wez
2013/03/05 02:12:31
Why do we want to crash the network process? I do
alexeypa (please no reviews)
2013/03/05 18:09:15
The network process dump will capture the location
|
+ } |
+ |
return handled; |
} |
@@ -82,7 +88,6 @@ void DaemonProcess::CloseDesktopSession(int terminal_id) { |
if (!IsTerminalIdKnown(terminal_id)) { |
LOG(ERROR) << "An invalid terminal ID. terminal_id=" << terminal_id; |
CrashNetworkProcess(FROM_HERE); |
- DeleteAllDesktopSessions(); |
return; |
} |
@@ -131,7 +136,6 @@ void DaemonProcess::CreateDesktopSession(int terminal_id) { |
if (IsTerminalIdKnown(terminal_id)) { |
LOG(ERROR) << "An invalid terminal ID. terminal_id=" << terminal_id; |
CrashNetworkProcess(FROM_HERE); |
- DeleteAllDesktopSessions(); |
return; |
} |
@@ -145,6 +149,8 @@ void DaemonProcess::CrashNetworkProcess( |
const tracked_objects::Location& location) { |
SendToNetwork(new ChromotingDaemonNetworkMsg_Crash( |
location.function_name(), location.file_name(), location.line_number())); |
+ |
+ DeleteAllDesktopSessions(); |
} |
void DaemonProcess::Initialize() { |