aboutsummaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
* Fix for issue 304: symupload needs to support timeout specifications(wininet ↵nealsid2009-03-204-8/+49
| | | | | | | | | | | can timeout when sending large symbol files). R=doshimun W=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@319 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix for issues 296, 297. Various symbol supplier classes need to be updated ↵nealsid2009-02-277-11/+88
| | | | | | with new overload('make check' was failing, as well as crash_report), and remove logging that was flooding output git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@318 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix for issue 242, plus a redo of how old exception handlers are tracked, ↵nealsid2009-02-263-22/+59
| | | | | | | | | | and called. R=Craig.Schlenter, luly81 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@315 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix build breaks on Solaris using Sun Studio.nealsid2009-02-232-3/+12
| | | | | | | | | Written by Ginn Chen & Eagle.Lu@ R=nealsid (although I don't have a Solaris machine to build on, & these changes look localized to Sun-only builds) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@314 4c0a9323-5329-0410-9bdc-e9ce6186880e
* See https://bugzilla.mozilla.org/show_bug.cgi?id=397200nealsid2009-02-221-3/+0
| | | | | | | | | | | The method of calculating a binary ID using the LC_ID command isn't compatible with non-default build processes, most Mac consumers use LC_UUID anyway but for those that don't, MD5 is a better choice R=nealsid W=Ted.Mielczarek git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@313 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 294: mmap error checking is not correct.nealsid2009-02-224-4/+4
| | | | | | | | R=Liu git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@312 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Modify symbol supplier interface to support an overload that takes a symbol ↵nealsid2009-02-197-40/+166
| | | | | | | | | | data buffer, to get around an extraneous read/write of symbol data R=doshimun git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@311 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 275: patch to include list of loaded modules in crash_report outputnealsid2009-02-101-0/+33
| | | | | | | | | Written by: jum@mac.com R=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@310 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Reinstnate the call to TerminateThread inside ExceptionHandler destructor ↵doshimun2009-01-201-1/+10
| | | | | | | | | | | | | | | | | | | | | | and put the graceful code inside a #ifdef. The problem is: If ExceptionHandler is created and destroyed in DllMain, then the previous change to remove the call to TerminateThread will lead to a deadlock. This is because inside DllMain the loader lock is acquired, and the previous change waits for the handler thread to exit in the destructor, that is with the loader lock acquired. But the handler thread cannot finish until it gets the loader lock to call DllMain for THREAD_DETACH. With this change, we add conditional compilation so that clients that want to avoid the call to terminate thread can do it by defining the appropriate preprocessor variable. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@309 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix an AppVerifier STOP in OOP server code. In the destructor ofdoshimun2009-01-162-1/+22
| | | | | | | | the OOP server, we need to wait for any pending I/O to be done. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@308 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix some typos in comments.doshimun2009-01-141-4/+4
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@307 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Minor fixes to windows exception handler.doshimun2009-01-142-15/+55
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@306 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
* Issue 283 - DWARF dumper doesn't handle DW_AT_specification. r=nealsidted.mielczarek2008-12-082-0/+39
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@303 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 284 - DWARF dumper doesn't output function names including arguments. ↵ted.mielczarek2008-12-083-3/+17
| | | | | | r=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@302 4c0a9323-5329-0410-9bdc-e9ce6186880e
* issue 286 - clean up some demangling code in dump_syms.mm. r=chris rogersted.mielczarek2008-12-032-85/+16
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@301 4c0a9323-5329-0410-9bdc-e9ce6186880e
* ExceptionHandler class is not handling initialization errors, such as themmentovai2008-12-031-8/+28
| | | | | | | | | | | | | handler thread not being created. Protect the exception handler against failure to create semaphores and a thread handle. Patch by Marc-André (MAD) Decoste, r=me http://code.google.com/p/google-breakpad/issues/detail?id=285 http://codereview.chromium.org/13065 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@300 4c0a9323-5329-0410-9bdc-e9ce6186880e
* follow up for issue 281 - dump_syms fails to find dylib symbol file inside ↵ted.mielczarek2008-12-011-7/+6
| | | | | | of a bundle. handle files without an extension properly git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@299 4c0a9323-5329-0410-9bdc-e9ce6186880e
* issue 281 - dump_syms fails to find dylib symbol file inside of a bundle. ↵ted.mielczarek2008-12-011-3/+5
| | | | | | r=nealsid git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@298 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Followup to address some review comments from Issue 259ted.mielczarek2008-11-251-9/+15
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@297 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 259 - crash when generating large .sym files with dump_syms on Linux. ↵ted.mielczarek2008-11-241-34/+56
| | | | | | Patch by login_ing@yahoo.com, r=Liu Li git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@296 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
* Fix for dump_syms to ignore line number information for addresses that don't ↵nealsid2008-11-031-16/+25
| | | | | | have an enclosing function git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@293 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-227-96/+174
| | | | | | 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
* Issue 276 - generate GUIDs ahead of time in Linux handler. r=Liu Lited.mielczarek2008-10-142-29/+55
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@290 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix for DWARF processing when inline functions were encountered. Inline ↵nealsid2008-10-141-5/+37
| | | | | | functions were part of the debugging information as sequential in the PC range of the function but the source file was where the function was written(as you might expect). However the old dump_syms code, once it switched files as it was iterating over a range of addresses, never switched back, causing inline functions to cause all file numbers for addresses after the PC of the inline function to be wrong git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@289 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix warning when converting int to boolnealsid2008-10-101-1/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@288 4c0a9323-5329-0410-9bdc-e9ce6186880e
* fix a typo in the makefile, HANDLER_SRC->HANDLER_OBJted.mielczarek2008-10-101-1/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@287 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Added DWARF support to Breakpad client. Thanks to Google for open sourcing ↵nealsid2008-10-0821-31/+8525
| | | | | | | | | | | | 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
* Generate Windows full memory dumps as a separate file. Patch by Huan Renmmentovai2008-09-161-7/+56
| | | | | | | <huanr@google.com>. r=me git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@285 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Include what you use: include <algorithm> and <string.h> as needed. Patch bymmentovai2008-09-152-0/+2
| | | | | | | Robert Henry. r=me git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@284 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Log a failure message in case of LOCATE_NOT_FOUND error.doshimun2008-07-301-0/+6
| | | | | | | | Without this change, no error is logged in this case. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@283 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Now we provide our own implementation of the MIG function exc_server, as ↵nealsid2008-07-114-0/+2083
| | | | | | | | | | | | recommended by Apple. See http://groups.google.com/group/google-breakpad-dev/browse_thread/thread/8b363b1f8a404714 For more information git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@282 4c0a9323-5329-0410-9bdc-e9ce6186880e
* In the destructor of ClientInfo, currently the wait on the ↵doshimun2008-06-091-10/+10
| | | | | | | | | | | | | clent_crashed_event is unregistered after the handle is closed. MSDN clearly says that the behavior is undefined in this case. See http://msdn.microsoft.com/en-us/library/ms685061(VS.85).aspx This change contains the fix for that bug. See attched diff. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@281 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Client process uptime is a very useful metric for crashes. Instead of each ↵doshimun2008-06-062-3/+42
| | | | | | | | | | | client process having to keep track of uptime and report it whenever a crash happens, integrate this feature into breakpad OOP code so that all clients get it for free. I tested this using the test app I have to test OOP stuff. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@280 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Modified symupload to correctly handle spaces in module names when ↵nealsid2008-06-051-3/+18
| | | | | | | | | | processing symbol file Reviewer=mmentovai git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@279 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix the following bug:doshimun2008-06-051-1/+1
| | | | | | | | | The sender updates the checkpoint file even when the report is not successfully sent. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@278 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Filter out duplicates from the image list when creating a minidump. See ↵nealsid2008-06-042-0/+13
| | | | | | | | | | issue 266 for more details. Reviewer = mmentovai git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@277 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Set the dump thread id and the requesting thread id properties of ↵doshimun2008-05-311-5/+9
| | | | | | | | | | | | | | MDRawBreakpadInfo only in case of in-process dump generation; otherwise the dump processing code of breakpad doesn't identify the crashing thread properly. I am checking this in to-be-reviewed since it is needed urgently in one of the products at Google. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@276 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix to ignore source files that have a text address of 0 in their stabs entrynealsid2008-05-191-0/+10
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@275 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Microsoft broke PROCESS_ALL_ACCESS when we build with WINVER=0x600. See ↵doshimun2008-05-152-2/+2
| | | | | | | | | | | | | | | http://nsylvain.blogspot.com/2008/01/winverwin32winnt-mayhem.html for details (second half of the post). Changing PROCESS_ALL_ACCESS to GENERIC_ALL in ClientInfo class when opening the client process handle on the OOP server side. A minor change to pipe name in the test app also. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@274 4c0a9323-5329-0410-9bdc-e9ce6186880e
* 64-bit processor can't handle 32-bit ppc minidumps due to struct paddingmmentovai2008-05-141-0/+7
| | | | | | | | | | differences on 64- and 32-bit CPUs. Force 32-bit alignment rules for 32-bit ppc context struct. r=nealsid http://groups.google.com/group/google-breakpad-dev/browse_thread/thread/21a8e99c4800b51d git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@273 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix to stop unit tests from being compiled & run for non-native architecturesnealsid2008-05-081-4/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@272 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Replace the user of wcscpy_s with safe_wcscpy in ↵doshimun2008-05-085-7/+16
| | | | | | | | | | | | | | common/windows/string_utils-inl.h to make the code compatible for teams that still use VS 2003 to build. Fix a bug in client ClientInfo class that returned CustomClientInfo struct containing a pointer in the client process address space instead of pointer to in-process data structure. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@271 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Some style guide compliance changes and changed the prototype of the method ↵doshimun2008-05-074-21/+25
| | | | | | to get custom client info in ClientInfo class. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@270 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Bug fix for issue 263: mach_vm_region_recurse calls have invalid parameter ↵nealsid2008-05-072-5/+4
| | | | | | | | | specified, which succeeds on Leopard but fails on Tiger Reviewer: Chris Rogers(ladderbreaker) git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@269 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add a convenience method to CustomClientInfo struct to set both name and ↵doshimun2008-05-051-0/+5
| | | | | | value in one call. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@268 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add a way for the client apps to specify custom information in case of ↵doshimun2008-05-0510-25/+187
| | | | | | | | | | | | | | out-of-process scenarios that the OOP server can use in whatever way it wants to. Fix a bug in CrashGenerationserver where CreateNamedPipe failure was not checked correctly. TODO in near future: Add a custom stream to minidump files for the custom information. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@267 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 261/262: 64-bit bug fix when iterating through load commands of a ↵nealsid2008-05-054-140/+21
| | | | | | 64-bit binary, and added new test case for ReadImageInfoForTask git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@266 4c0a9323-5329-0410-9bdc-e9ce6186880e