aboutsummaryrefslogtreecommitdiff
path: root/src/client/ios/Breakpad.mm
diff options
context:
space:
mode:
authorAdam Harrison <adamharrison@google.com>2017-10-11 16:01:06 -0700
committerMark Mentovai <mark@chromium.org>2017-10-12 00:21:31 +0000
commitbc8fb886486bb1c47cda103d75d86f21d6857920 (patch)
tree17ca495ac18b65c51c5d0e53b027ae8e664c659d /src/client/ios/Breakpad.mm
parentAndroid: Use sys/types.h instead of stdint.h for sys/user.h (diff)
downloadbreakpad-bc8fb886486bb1c47cda103d75d86f21d6857920.tar.xz
ios: Adds a no-Mach exception handler
This exception_handler_no_mach does not use Mach for exception handling so that clients such as tvOS and watchOS that do not support mach messages can handle POSIX signals. Change-Id: I4a4574e58834bc590e110e6ecd1825f8af1437a2 Reviewed-on: https://chromium-review.googlesource.com/714276 Reviewed-by: Mark Mentovai <mark@chromium.org>
Diffstat (limited to 'src/client/ios/Breakpad.mm')
-rw-r--r--src/client/ios/Breakpad.mm7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/client/ios/Breakpad.mm b/src/client/ios/Breakpad.mm
index ce635bd2..88dd2870 100644
--- a/src/client/ios/Breakpad.mm
+++ b/src/client/ios/Breakpad.mm
@@ -36,6 +36,7 @@
#include <pthread.h>
#include <sys/stat.h>
#include <sys/sysctl.h>
+#include <TargetConditionals.h>
#import "client/ios/handler/ios_exception_minidump_generator.h"
#import "client/mac/crash_generation/ConfigFile.h"
@@ -45,6 +46,12 @@
#import "client/mac/handler/protected_memory_allocator.h"
#import "common/simple_string_dictionary.h"
+#if !TARGET_OS_TV && !TARGET_OS_WATCH
+#import "client/mac/handler/exception_handler.h"
+#else
+#import "client/ios/handler/exception_handler_no_mach.h"
+#endif // !TARGET_OS_TV && !TARGET_OS_WATCH
+
#if !defined(__EXCEPTIONS) || (__clang__ && !__has_feature(cxx_exceptions))
// This file uses C++ try/catch (but shouldn't). Duplicate the macros from
// <c++/4.2.1/exception_defines.h> allowing this file to work properly with