Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(215)

Side by Side Diff: src/trusted/service_runtime/nacl_secure_service.c

Issue 11189140: Report exit status in debug stub, if tab is closed in chrome. (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2012 The Native Client Authors. All rights reserved. 2 * Copyright (c) 2012 The Native Client Authors. All rights reserved.
3 * Use of this source code is governed by a BSD-style license that can be 3 * Use of this source code is governed by a BSD-style license that can be
4 * found in the LICENSE file. 4 * found in the LICENSE file.
5 */ 5 */
6 6
7 #include "native_client/src/trusted/service_runtime/nacl_secure_service.h" 7 #include "native_client/src/trusted/service_runtime/nacl_secure_service.h"
8 8
9 #include "native_client/src/shared/platform/nacl_exit.h" 9 #include "native_client/src/shared/platform/nacl_exit.h"
10 #include "native_client/src/shared/platform/nacl_log.h" 10 #include "native_client/src/shared/platform/nacl_log.h"
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after
94 struct NaClSecureService *self) { 94 struct NaClSecureService *self) {
95 NaClLog(5, "NaClSecureServiceThreadCountDecr\n"); 95 NaClLog(5, "NaClSecureServiceThreadCountDecr\n");
96 NaClXMutexLock(&self->mu); 96 NaClXMutexLock(&self->mu);
97 if (0 == self->conn_count) { 97 if (0 == self->conn_count) {
98 NaClLog(LOG_FATAL, 98 NaClLog(LOG_FATAL,
99 "NaClSecureServiceThreadCountDecr: " 99 "NaClSecureServiceThreadCountDecr: "
100 "decrementing thread count when count is zero\n"); 100 "decrementing thread count when count is zero\n");
101 } 101 }
102 if (0 == --self->conn_count) { 102 if (0 == --self->conn_count) {
103 NaClLog(4, "NaClSecureServiceThread: all channels closed, exiting.\n"); 103 NaClLog(4, "NaClSecureServiceThread: all channels closed, exiting.\n");
104 NaClExit(0); 104 /*
105 * Set exit code for application. This wakes up main thread and
106 * application will terminate gracefully there. This is needed to allow
107 * debug stub to send exit status to debugger. This way we can detect
108 * normal NaCl module exit in tests.
109 */
110 NaClReportExitStatus(self->nap, 0);
105 } 111 }
106 NaClXMutexUnlock(&self->mu); 112 NaClXMutexUnlock(&self->mu);
107 } 113 }
108 114
109 int NaClSecureServiceAcceptConnection( 115 int NaClSecureServiceAcceptConnection(
110 struct NaClSimpleService *vself, 116 struct NaClSimpleService *vself,
111 struct NaClSimpleServiceConnection **vconn) { 117 struct NaClSimpleServiceConnection **vconn) {
112 struct NaClSecureService *self = 118 struct NaClSecureService *self =
113 (struct NaClSecureService *) vself; 119 (struct NaClSecureService *) vself;
114 int status; 120 int status;
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
330 336
331 struct NaClSecureReverseClientVtbl const kNaClSecureReverseClientVtbl = { 337 struct NaClSecureReverseClientVtbl const kNaClSecureReverseClientVtbl = {
332 { 338 {
333 { 339 {
334 NaClSecureReverseClientDtor, 340 NaClSecureReverseClientDtor,
335 }, 341 },
336 }, 342 },
337 NaClSecureReverseClientInsertHandler, 343 NaClSecureReverseClientInsertHandler,
338 NaClSecureReverseClientRemoveHandler, 344 NaClSecureReverseClientRemoveHandler,
339 }; 345 };
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698