aboutsummaryrefslogtreecommitdiff
path: root/src/client/mac/handler
Commit message (Collapse)AuthorAgeFilesLines
* 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
* Use task_info(..., TASK_DYLD_INFO, ...) on 10.6 and later in preference tommentovai2011-04-051-5/+57
| | | | | | | looking up the _dyld_all_image_infos symbol in /usr/lib/dyld. Review URL: http://breakpad.appspot.com/276001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@786 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Rename duplicate argument names to make it compile with CLang.ted.mielczarek2011-01-251-8/+8
| | | | | | P=rafael.espindola R=ted at http://breakpad.appspot.com/248001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@765 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix MinidumpGenerator::WriteExceptionStream for writing cross-architecture dumpsted.mielczarek@gmail.com2010-12-161-5/+2
| | | | | | R=mark at http://breakpad.appspot.com/244001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@747 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow out-of-process minidump generation to work on processes of a different ↵ted.mielczarek@gmail.com2010-12-156-620/+899
| | | | | | | | CPU architecture R=mark at http://breakpad.appspot.com/241001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@746 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow writing on-request minidumps with an exception streamted.mielczarek@gmail.com2010-12-152-33/+79
| | | | | | R=mark at http://breakpad.appspot.com/172001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@745 4c0a9323-5329-0410-9bdc-e9ce6186880e
* issue 334 - Fix a race condition between ExceptionHandler::Teardown and ↵ted.mielczarek@gmail.com2010-12-152-6/+14
| | | | | | | | ExceptionHandler::WaitForMessage on OS X R=mark at http://breakpad.appspot.com/165001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@744 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add some unit tests for the mac MinidumpGeneratorted.mielczarek2010-12-131-81/+0
| | | | | | R=mark at http://breakpad.appspot.com/240001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@742 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix WriteMemoryListStream to remove an extraneous loop index variable increment.ted.mielczarek2010-11-301-1/+1
| | | | | | | Patch by timeless <timeless@mozdev.org>, R=me, unittest by me. See https://bugzilla.mozilla.org/show_bug.cgi?id=615534 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@735 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Write a window of memory around the instruction pointer from the crashing ↵ted.mielczarek2010-09-232-3/+132
| | | | | | | | thread to the minidump on OS X. R=nealsid at http://breakpad.appspot.com/200001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@699 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow dumping live processes on OS Xted.mielczarek@gmail.com2010-08-133-1/+44
| | | | | | R=mark at http://breakpad.appspot.com/148001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@647 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Implement CrashGeneration{Client,Server} for OOP dump generation on OS X, ↵ted.mielczarek@gmail.com2010-08-132-4/+34
| | | | | | | | enable OOP dump generation in ExceptionHandler R=mark at http://breakpad.appspot.com/146001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@646 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Change exception_handler_test.cc to use Google Testted.mielczarek@gmail.com2010-08-121-99/+0
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@641 4c0a9323-5329-0410-9bdc-e9ce6186880e
* review: http://breakpad.appspot.com/139001dmaclach2010-07-291-0/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@636 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Review: http://breakpad.appspot.com/136001dmaclach2010-07-284-199/+74
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@633 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Clean up build for 64 bit.dmaclach2010-07-197-42/+55
| | | | | | | | | | | Fix up some broken mac projects. Consolidate project settings in xcconfig files. http://breakpad.appspot.com/130001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@627 4c0a9323-5329-0410-9bdc-e9ce6186880e
* issue 372 - fix Mac OS X minidump generation code to handle x86-64 properly. ↵ted.mielczarek2010-04-291-4/+23
| | | | | | r=mark at http://breakpad.appspot.com/103001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@578 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 39002: Breakpad DWARF parser: Move DWARF parser to ↵jimblandy@gmail.com2009-12-151-3/+3
| | | | | | | | | | | | | | | | platform-independent directory. Move the DWARF parser, and the functioninfo.cc DWARF consumer, from src/common/mac/dwarf to src/commmon/dwarf, so that it can be shared between the Mac and Linux dumpers. Fix up #include directives, multiple inclusion protection macros, and Xcode build files. a=jimblandy, r=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@446 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Mozilla bug 532713 - OS X client code doesn't decoded extended family ids in ↵ted.mielczarek2009-12-141-0/+15
| | | | | | CPU info. Patch by Jeff Muizelaar <jmuizelaar@mozilla.com>, r=me git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@440 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Forward exceptions in child processes to Apple's Crash Reporternealsid2009-11-181-0/+3
| | | | | | | | | | http://breakpad.appspot.com/38001/show R=mmentovai, jeremy A=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@429 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Always export catch_exception_raise.mmentovai2009-11-111-1/+4
| | | | | | | | | Patch by Jeremy Moskovich <jeremy@chromium.org> Code review URL: http://breakpad.appspot.com/37001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@428 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix compilation of OS X handler on PPC with 10.5 SDK. r=nealsid at ↵ted.mielczarek2009-09-302-18/+5
| | | | | | http://breakpad.appspot.com/30001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@404 4c0a9323-5329-0410-9bdc-e9ce6186880e
* issue 323 - OS X exception handler / minidump generator should set exception ↵ted.mielczarek2009-06-125-10/+26
| | | | | | address correctly for EXC_BAD_ACCESS . r=nealsid at http://breakpad.appspot.com/15002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@350 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Patch from Jeremy to have better error reporting, and workaround a Cocoa bug ↵nealsid2009-05-151-1/+2
| | | | | | | | | | in different locales R=nealsid A=jeremy git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@339 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix to support extensible parameter handling, and add process ↵nealsid2009-04-221-9/+1
| | | | | | | | | | | crashtime/uptime support R=stuart morgan A=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@331 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Patch from Jeremy Moskovich to build with 10.5 SDK correctly. Also removed ↵nealsid2009-04-212-8/+18
| | | | | | | | | | | externals directory. A=jeremy R=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@328 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Open sourcing the Breakpad framework from Google. nealsid2009-04-013-10/+8
| | | | | | | | | A=many, many people R=nealsid, jeremy moskovich(from Chromium project) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@322 4c0a9323-5329-0410-9bdc-e9ce6186880e
* New test data to reflect Ted's changes that add function parameters to ↵nealsid2008-12-191-3318/+3457
| | | | | | | | | | symbols when using DWARF R=ted.mielczarek git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@305 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Added some sanity checks when iterating over threads in a crashed process. ↵nealsid2008-11-191-22/+47
| | | | | | | | | | In same cases the ESP could be 0. In other cases it would be borked completely(i.e. pointing to an invalid range). R=Jeremy Moskovich git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@295 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Undo suspend/resume feature since it was meant as a workaround to a bug in ↵nealsid2008-10-272-61/+20
| | | | | | how we handled child process exceptions. Currently we don't return to the kernel when we take an exception from a child process, causing a hang. Now we return KERN_FAILURE, indicating to the kernel to move on to the host-level exception handler(usually Crash Reporter) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@292 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 181: Add version info for Mac OS X modules. Found by iterating over ↵nealsid2008-10-225-94/+160
| | | | | | load commands until I found LC_ID_DYLIB. Also modified crash_report to generate version number. Also added suspend/resume capability to exception handler, necessary because exception handling can behave strangely across fork() calls. Also added fix for filtering out functions with no line number information, and for filtering out some multiple inheritance glue the compiler generates. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@291 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Added DWARF support to Breakpad client. Thanks to Google for open sourcing ↵nealsid2008-10-086-1/+5456
| | | | | | | | | | | | their DWARF code! Modified dump_syms to detect dSYM bundles or a binary with DWARF data appropriately, and convert data from DWARF reader to dump_syms native structures R=danny.berlin (original writer of DWARF code) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@286 4c0a9323-5329-0410-9bdc-e9ce6186880e