Chromium Code Reviews| Index: chrome/browser/renderer_host/chrome_render_message_filter.cc |
| diff --git a/chrome/browser/renderer_host/chrome_render_message_filter.cc b/chrome/browser/renderer_host/chrome_render_message_filter.cc |
| index 670041360f194a4f22d6d422918d7ea25e5c3428..88076b3fd67a332f560946b953d68a060d970917 100644 |
| --- a/chrome/browser/renderer_host/chrome_render_message_filter.cc |
| +++ b/chrome/browser/renderer_host/chrome_render_message_filter.cc |
| @@ -147,7 +147,12 @@ void ChromeRenderMessageFilter::OverrideThreadForMessage( |
| void ChromeRenderMessageFilter::OnLaunchNaCl( |
| const std::wstring& url, int socket_count, IPC::Message* reply_msg) { |
| NaClProcessHost* host = new NaClProcessHost(url); |
| - host->Launch(this, socket_count, reply_msg); |
| + if (!host->Launch(this, socket_count, reply_msg)) { |
| + // On failure, the NaClProcessHost didn't send the reply which the renderer |
| + // is blocked on. Unblock the renderer by sending an error. |
| + reply_msg->set_reply_error(); |
|
dmichael (off chromium)
2011/12/20 19:01:34
Now that I think about it, did you mean for this s
|
| + Send(reply_msg); |
| + } |
| } |
| #endif |