| Index: src/trusted/reverse_service/reverse_service.cc
|
| ===================================================================
|
| --- src/trusted/reverse_service/reverse_service.cc (revision 6725)
|
| +++ src/trusted/reverse_service/reverse_service.cc (working copy)
|
| @@ -52,7 +52,7 @@
|
| UNREFERENCED_PARAMETER(in_args);
|
|
|
| NaClLog(4, "Entered AddChannel\n");
|
| - out_args[0]->u.bval = service->Start();
|
| + out_args[0]->u.bval = service->Start(false);
|
| NaClLog(4, "Leaving AddChannel\n");
|
| rpc->result = NACL_SRPC_RESULT_OK;
|
| }
|
| @@ -402,9 +402,24 @@
|
| }
|
|
|
|
|
| -bool ReverseService::Start() {
|
| +static void RevServiceCbBinder(void *state,
|
| + int server_loop_ret) {
|
| + ReverseService *obj = reinterpret_cast<ReverseService *>(state);
|
| +
|
| + UNREFERENCED_PARAMETER(server_loop_ret);
|
| + obj->reverse_interface()->ReportCrash();
|
| +}
|
| +
|
| +
|
| +bool ReverseService::Start(bool crash_report) {
|
| NaClLog(4, "Entered ReverseService::Start\n");
|
| - return service_socket_->StartService(reinterpret_cast<void*>(this));
|
| + if (crash_report) {
|
| + return service_socket_->StartServiceCb(RevServiceCbBinder,
|
| + reinterpret_cast<void*>(this));
|
| + } else {
|
| + return service_socket_->StartServiceCb(NULL,
|
| + reinterpret_cast<void*>(this));
|
| + }
|
| }
|
|
|
| void ReverseService::WaitForServiceThreadsToExit() {
|
|
|