Index: ppapi/native_client/src/trusted/plugin/plugin.cc |
diff --git a/ppapi/native_client/src/trusted/plugin/plugin.cc b/ppapi/native_client/src/trusted/plugin/plugin.cc |
index ce4ff1814f1d6414c07c84f8bfd36c8e03e22e26..7b9829782df44a45364629280068ab7a72a0af1e 100644 |
--- a/ppapi/native_client/src/trusted/plugin/plugin.cc |
+++ b/ppapi/native_client/src/trusted/plugin/plugin.cc |
@@ -1275,6 +1275,15 @@ void Plugin::NexeDidCrash(int32_t pp_error) { |
" non-PP_OK arg -- SHOULD NOT HAPPEN\n")); |
} |
PLUGIN_PRINTF(("Plugin::NexeDidCrash: crash event!\n")); |
+ int exit_status = main_subprocess_.service_runtime()->exit_status(); |
+ if (-1 != exit_status) { |
+ // The NaCl module voluntarily exited. However, this is still a |
+ // crash from the point of view of Pepper, since PPAPI plugins are |
+ // event handlers and should never exit. |
+ PLUGIN_PRINTF((("Plugin::NexeDidCrash: nexe exited with status %d" |
+ " so this is a \"controlled crash\".\n"), |
+ exit_status)); |
+ } |
// If the crash occurs during load, we just want to report an error |
// that fits into our load progress event grammar. If the crash |
// occurs after loaded/loadend, then we use ReportDeadNexe to send a |