aboutsummaryrefslogtreecommitdiff
path: root/src/client/mac/handler
Commit message (Collapse)AuthorAgeFilesLines
* Set 32 bits iOS app to use vm_region_recurse_64.blundell@chromium.org2014-08-111-4/+0
| | | | | | | | | | | | | | | Using the vm_region_recurse API with a vm_region_submap_info_64 structure leads to a deviation in the structure when reading the user_tag field. Switching to the vm_region_recurse_64 API. Patch by Olivier Robin <olivierrobin@chromium.org> BUG=crbug/397133 Review URL: https://breakpad.appspot.com/4664002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1363 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Use PAGE_MAX_SIZE. PAGE_SIZE is now a variable size.qsr@chromium.org2014-06-061-1/+5
| | | | | | | | | | | | | | | | This fixes exception_handler.cc:77:8: error: fields must have a constant size: 'variable length array in structure' extension will never be supported char protected_buffer[PAGE_SIZE] __attribute__((aligned(PAGE_SIZE))); BUG=None TEST=breakpad builds on ios8 R=mark@chromium.org Review URL: https://breakpad.appspot.com/9654002 Patch from Justin Cohen <justincohen@chromium.org>. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1338 4c0a9323-5329-0410-9bdc-e9ce6186880e
* [Mac] Remove unused host_info call and supporting calls.mark@chromium.org2014-05-121-11/+0
| | | | | | | | R=blundell@chromium.org Review URL: https://breakpad.appspot.com/2684002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1329 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Make ARM64 detection consistent in chromium.mark@chromium.org2014-04-014-7/+7
| | | | | | | | | | | | | | This is to uniform ARM64 detection code in chromium. Use only __aarch64__ and don't look for __arm64__ at all. Patch by Primiano Tucci <primiano@chromium.org> BUG=chromium:354405, chromium:358092 Review URL: https://breakpad.appspot.com/1304002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1293 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fixing compiler warnings:ivan.penkov@gmail.com2014-02-281-3/+3
| | | | | | | | | | | | - Building Breakpad in Xcode with arm64 architecture. - iOS Patches provided by: Ian Hickson and Greg Vance. R=mark@chromium.org Review URL: https://breakpad.appspot.com/1184003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1286 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Update GTM and enable -Wundef and strict C++11 flags.dmaclach2014-02-261-7/+14
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1283 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fixup breakpad compile for Xcode 5.1 iOS releasedmaclach2014-02-241-2/+2
| | | | | | | | (https://breakpad.appspot.com/1154002/) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1282 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix up ~14 warnings about 'Implicit conversion loses integer precision' on iOS.dmaclach2014-02-182-17/+19
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1281 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Generate minidumps for 64-bit ARM apps on iOS.mark@chromium.org2013-11-217-23/+194
| | | | | | | | | | | | | | | Adds an ARM64-specific definition of MDRawContext and support for writing out a minidump when running on ARM64. Additionally, extends the iOS minidump generator for NSExceptions to work on ARM64 as well as ARM. Patch by Colin Blundell <blundell@chromium.org> BUG=542 Review URL: https://breakpad.appspot.com/664002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1235 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Remove define of mach_vm_region from mach_vm_compatibility.h.qsr@chromium.org2013-10-171-1/+0
| | | | | | | | | | | | mach_vm_region() is not called in the Breakpad codebase. Patch by: blundell@chromium.org R=qsr@chromium.org Review URL: https://breakpad.appspot.com/643002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1223 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Enable the SIGABRT handler on desktop OS Xted.mielczarek@gmail.com2013-08-142-2/+13
| | | | | | R=mark at https://breakpad.appspot.com/618002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1205 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix missing result check in Mac exception handlerted.mielczarek@gmail.com2013-04-181-3/+7
| | | | | | Patch by Georg Fritzsche <georg.fritzsche@googlemail.com>, R=ted at https://breakpad.appspot.com/554003/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1152 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Make OOP mac crashreporting exit after writing dumpted.mielczarek@gmail.com2013-03-061-1/+4
| | | | | | R=mark at https://breakpad.appspot.com/538002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1127 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Use stdint types everywhereted.mielczarek@gmail.com2013-03-062-25/+25
| | | | | | R=mark at https://breakpad.appspot.com/535002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1121 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Move scoped_ptr.h to commonted.mielczarek@gmail.com2013-01-171-1/+1
| | | | | | R=mark at https://breakpad.appspot.com/509002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1096 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow the Mac and iOS Breakpad clients to build without exceptions when the ↵mark@chromium.org2012-12-111-1/+14
| | | | | | | | | | | | C++ standard library is not provided by libstdc++. libc++, for example, does not provide its own try and catch replacement macros when exceptions are disabled. BUG=509 Review URL: https://breakpad.appspot.com/503002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1089 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Explicitly include unistd.h for getpagesize().mark@chromium.org2012-12-071-0/+1
| | | | | | | | | Patch by Nico Weber <thakis@chromium.org> Review URL: https://breakpad.appspot.com/502002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1087 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Update dump_syms to correctly filter on cpu subtype.qsr@chromium.org2012-10-041-3/+5
| | | | | | | Right now, if an archive contain multiple executable for the same CPU but with different subtype, there is no way to dump any but the first one. Review URL: https://breakpad.appspot.com/476002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1061 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix an analyzer warning due to value assigned but not used.kenbongort@gmail.com2012-10-031-2/+0
| | | | | | | http://breakpad.appspot.com/473002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1058 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix a bunch of small nits.thestig@chromium.org2012-09-261-52/+50
| | | | | | Review URL: https://breakpad.appspot.com/463004 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1051 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Turn on more warnings in ios / mac projects.qsr@chromium.org2012-09-213-18/+25
| | | | | | | | | | | | | | | Make casts explicit. This makes casts that loose precision explicit, from here on we will get warnings. The changes in this commit are made without evaluating each cast, asuming the original casts were intentional. Patch by: jakerr@google.com Review: https://breakpad.appspot.com/453002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1046 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Getting context information from the kernel when catching a SIGABRT on iOS.qsr@chromium.org2012-08-204-9/+39
| | | | | | | | | Until now, the context information was the current one when receiving a SIGABRT. This is mainly wrong because the signal handler start in a new context. This instead use the context passed to the signal handler. Review URL: https://breakpad.appspot.com/435002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1015 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix compilation for iOS on XCode 4.5qsr@chromium.org2012-07-091-1/+1
| | | | | | | | | | | | | | Compilation directive for PPC was using MAC_OS_X_VERSION_MIN_REQUIRED. This is not correct, as the latest SDKs allow to compile for older version of Mac OS, but don't contain the ppc headers. Changing the directive to use MAC_OS_X_VERSION_MAX_ALLOWED instead. Moreover, uploader.mm was including pwd.h that was not used and doesn't exist on the latest iOS SDK. Review URL: https://breakpad.appspot.com/412002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@982 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Unprotect the allocator before trying to create a minidump from a signal.qsr@chromium.org2012-05-141-5/+13
| | | | | | | | | It is impossible to write a minidump with memory protected. This means that before this change, no minidump were created when a signal was caught, instead the application froze. Review URL: https://breakpad.appspot.com/389002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@964 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix one more -Wnull-conversion warning.mark@chromium.org2012-03-301-1/+2
| | | | | | | | | Patch by Nico Weber <thakis@chromium.org> Review URL: https://breakpad.appspot.com/370001/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@939 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix -Wnull-conversion warnings in breakpad.mark@chromium.org2012-03-302-2/+2
| | | | | | | | | Patch by Nico Weber <thakis@chromium.org> Review URL: https://breakpad.appspot.com/367001/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@938 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add high level API for breakpad on iOS.qsr@chromium.org2012-03-131-7/+9
| | | | | | | | | | | The new API allows to automatically upload repports to the crash server when the application restarts. This change also: - Correct a bug on the test for correct alignment of the abrt signal handler - Add user friendly information on crashes for SIGABRT and NSException Review URL: https://breakpad.appspot.com/361001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@935 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Change iOS implementation to not use exc_serverqsr@chromium.org2012-03-091-86/+89
| | | | | | | | | | | Instead of using exc_server, the message is parsed directly, and the minidump is created, then the app is killed. Moreover, the only catch exception is exception_raise. This patch remove all rereference to exception_raise_state and exception_raise_state_identity. Review URL: https://breakpad.appspot.com/358001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@934 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add SIGABRT handler for mac and iOS.qsr@chromium.org2012-03-092-6/+70
| | | | | | | | SIGABRT were not handled while in process. This change add a signal handler to handle this. Review URL: https://breakpad.appspot.com/360001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@933 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Removing breakpad_exc_server and all references.qsr@chromium.org2012-03-083-2085/+2
| | | | | | | This was aimed at replacing exc_server, but was not used. Review URL: https://breakpad.appspot.com/357001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@930 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Correct various compilation warnings.qsr@chromium.org2012-03-072-14/+16
| | | | | | | | | | - Cast result of _dyld_image_count to prevent compilation warning: The 2 int in both side of the ? operator should have the same type. - Remove unused variable for return values. - Remove unused NSUserDefaults. Review URL: https://breakpad.appspot.com/354001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@929 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Creating minidump for uncaught exception on iOS.qsr@chromium.org2012-02-141-4/+12
| | | | | | | | | | | This CL adds a minidump_generator that can write a minidump from a NSException on iOS on an ARM cpu. This CL also install an uncaught exception handler on iOS, and use the previous generator to write minidumps for any uncaught exception. Review URL: https://breakpad.appspot.com/347001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@916 4c0a9323-5329-0410-9bdc-e9ce6186880e
* NXSwapBigIntToHost is deprecated, use CFSwapInt32BigToHost instead.mark@chromium.org2012-02-061-8/+9
| | | | | | | Patch by Nico Weber <thakis@chromium.org> git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@913 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix several clang warnings in breakpad.mark@chromium.org2012-01-261-3/+3
| | | | | | | | | | | | | | | | | | uploader.mm:549:5: warning: instance method '-uploadData:name:url:' not found (return type defaults to 'id') [self uploadData:logFileData_ name:@"log" url:url]; => it looks like this method does in fact not exist, the last parameter needs to be removed. breakpad_nlist_64.cc:193:59: warning: '&&' within '||' [-Wlogical-op-parentheses] => Just add parentheses, no functionality change. Patch by Nico Weber <thakis@chromium.org> BUG=none TEST=breakpad stil works. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@907 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Rename md5.c to md5.cc, put its contents inside the google_breakpad namespace.ted.mielczarek2011-11-181-4/+4
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@887 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix several error-case leaks on the Mac found by clang analysisstuartmorgan2011-11-141-2/+7
| | | | | | | Review URL: http://breakpad.appspot.com/325001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@884 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add mach_vm_deallocate to the set of function not available on iOS5.qsr@chromium.org2011-10-241-0/+1
| | | | | | Review URL: http://breakpad.appspot.com/318003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@880 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Do not use mach_vm.h on iOS.qsr@chromium.org2011-10-245-15/+56
| | | | | | | | | | mach_vm.h has been removed from iOS5. Use #define to use vm_ replacement of mach_vm_ functions on iOS. Do not use mach_vm_allocate -> use a stack variable instead. Review URL: http://breakpad.appspot.com/321001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@879 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow to retrieve id of a module from memory instead of going to disk for iOS.qsr@chromium.org2011-10-202-7/+25
| | | | | | | | Allow macho_id and macho_walker to read data from memory. Wire up this when reading module on iOS. Review URL: http://breakpad.appspot.com/319001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@873 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Handle ios dump.qsr@chromium.org2011-10-111-0/+4
| | | | | | | | | | This change add a flag for ios minidumps and allow handler to recognize it. It doesn't recognize arm specific exceptions that will be logged as unknown type. Review URL: http://breakpad.appspot.com/311002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@855 4c0a9323-5329-0410-9bdc-e9ce6186880e
* #ifdef cpu specific code.qsr@chromium.org2011-10-076-9/+160
| | | | | | Review URL: http://breakpad.appspot.com/307002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@848 4c0a9323-5329-0410-9bdc-e9ce6186880e
* 10.4 SDK fixmark@chromium.org2011-10-061-0/+7
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@847 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix some compilation warnings and other errors due to API changesmark@chromium.org2011-09-292-17/+11
| | | | | | Review URL: http://breakpad.appspot.com/305002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@841 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix a Breakpad crash during teardown when USE_PROTECTED_ALLOCATIONS is inmark@chromium.org2011-08-261-0/+8
| | | | | | | | | | | | effect. BUG=none TEST=Apple Crash Reporter logs from processes in which Breakpad handles the crash should point the finger at the actual crash source, not the Breakpad thread's attempt to write to unwritable memory. Review URL: http://breakpad.appspot.com/301001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@828 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add missing (parentehses.)mark@chromium.org2011-08-261-1/+1
| | | | | | | | BUG=247, chromium:94107 TEST=Minidump file sizes should be manageable Review URL: http://breakpad.appspot.com/300002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@827 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix CalculateStackSize to behave properly when the main thread's stack ismark@chromium.org2011-08-252-27/+32
| | | | | | | | | | | | | | | | | | split up into multiple regions. An older workaround relyied on known fixed stack locations and only filled in the initial page of the stack if it was in a distinct region. The new approach looks upwards for additional regions that appear to be part of the same stack. With PIE on Lion, the stack no longer begins at a fixed address, so the older workaround became ineffective. BUG=247, chromium:94107 TEST=Stacks should run through to _main/start and then stop when examining Chrome on Lion with PIE and "slid" stacks. Review URL: http://breakpad.appspot.com/300001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@826 4c0a9323-5329-0410-9bdc-e9ce6186880e
* The process_id field is unsigned, so we need this cast in c++0x.mark@chromium.org2011-08-111-1/+2
| | | | | | | | | Patch by Rafael Ávila de Espí­ndola <respindola@mozilla.com> https://bugzilla.mozilla.org/show_bug.cgi?id=677644 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@825 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix clang warnings.mark@chromium.org2011-08-111-2/+2
| | | | | | Review URL: http://breakpad.appspot.com/298002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@823 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix a typo in r817ted.mielczarek2011-07-271-1/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@820 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix compilation using the OS X 10.7 SDK by #ifdefing out PPC support when ↵ted.mielczarek@gmail.com2011-07-262-1/+22
| | | | | | | | targeting 10.7, as PPC support has been removed from the 10.7 SDK A=Rafael Ávila de Espíndola <respindola@mozilla.com>, R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=673789 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@817 4c0a9323-5329-0410-9bdc-e9ce6186880e