Index: src/shared/platform/nacl_log.c |
diff --git a/src/shared/platform/nacl_log.c b/src/shared/platform/nacl_log.c |
index 2e6e4d1a7decf65aeb3fcca810b654230c2544e5..5f172a3eca9c7350e7a9948593cd65d45c91ca0d 100644 |
--- a/src/shared/platform/nacl_log.c |
+++ b/src/shared/platform/nacl_log.c |
@@ -352,8 +352,9 @@ void NaClLogUnlock(void) { |
#ifdef __COVERITY__ |
NaClAbort(); /* help coverity figure out that this is the default */ |
#else |
- (*gNaClLogAbortBehavior)(); |
+ NaClLogRunAbortBehavior(); |
#endif |
+ /* The abort behavior hook may not abort, so abort here in case. */ |
NaClAbort(); |
} |
break; |
@@ -716,3 +717,7 @@ void NaClLogSetAbortBehavior(void (*fn)(void)) { |
gNaClLogAbortBehavior = fn; |
NaClXMutexUnlock(&log_mu); |
} |
+ |
+void NaClLogRunAbortBehavior(void) { |
+ (*gNaClLogAbortBehavior)(); |
+} |