Commit graph

  • de2fd15db9 Issue 159: reviewer Waylonis ladderbreaker 2007-05-02 21:05:49 +0000
  • c455a76c03 Issue 159: reviewer Waylonis ladderbreaker 2007-05-02 21:04:57 +0000
  • e219ba182e Merge Ted's patch for writing symbols to stdout for linux. luly81 2007-05-02 19:13:09 +0000
  • 3c27dcc1b6 Minidump without context crashes the processor (#153). r=bryner mmentovai 2007-04-25 19:38:01 +0000
  • 329e6a9630 Emergency crash fix, tbr=bryner mmentovai 2007-04-25 15:17:19 +0000
  • b63740b329 Truncated Windows/x86 stacks when using FPO. Add stack scanning to recover instruction and frame pointers with better reliability. r=bryner mmentovai 2007-04-20 18:36:42 +0000
  • 1d4ce0a1d8 c++filt crashes when fed some mangled ObjC++ names. Oops. Patch by Dave MacLachlan, r=me. mmentovai 2007-04-12 20:40:22 +0000
  • e9017f3239 Issue 147 - reviewer Waylonis ladderbreaker 2007-04-11 00:45:00 +0000
  • 29789d8106 Wrong version of swprintf used with VS 2003/7.1 CRT. r=bryner mmentovai 2007-04-09 18:35:20 +0000
  • 375931a680 Revert previous patch, see google-breakpad-dev mmentovai 2007-04-05 19:44:29 +0000
  • fe60ba9789 Fix temp file leak. Patch by Thomas Thiriez. r=me mmentovai 2007-04-05 19:41:33 +0000
  • 30fc9ce1c0 Replace GB_WSU_SAFE_SWPRINTF_TERMINATE with inline code (#145 followup). r=bryner mmentovai 2007-04-04 16:13:55 +0000
  • 825840253b Discard age field in the dumped symbol file. luly81 2007-04-04 03:26:40 +0000
  • e2abee6b01 Issue 147 - reviewer Waylonis ladderbreaker 2007-04-03 01:18:18 +0000
  • aa870d0c1b Issue 146 - reviewer Waylonis ladderbreaker 2007-04-02 23:17:16 +0000
  • 1de8bed899 Windows http_upload should allow response without Content-Length header (#144). Patch by Ted Mielczarek. r=me mmentovai 2007-04-02 18:24:16 +0000
  • aec44489da vswprintf causes Purify to fail (#145). r=darin mmentovai 2007-03-30 20:30:08 +0000
  • 3479e850c5 Fix issue 136. Block signals before writing minidumps. luly81 2007-03-29 01:32:39 +0000
  • ab175ccc2b Fix bug of issue 135, now can dump symbols for dynamic libraries. Also some minor fixes to make it compile with more strict compiling options. luly81 2007-03-27 02:16:13 +0000
  • baaeb5af71 issue141: reviewer Waylonis ladderbreaker 2007-03-23 20:23:31 +0000
  • 33f178df55 s/an breakpad/a breakpad/ (#127), patch by techtonik, r=me mmentovai 2007-03-23 16:21:17 +0000
  • 809f0cb858 Ignore functions that have invalid addresses or sizes, instead of aborting the symbol file load (#137). r=mmentovai. bryner 2007-03-22 23:20:17 +0000
  • 6bc866cc82 Don't output FUNC lines for 0-length functions (#139). r=bryner mmentovai 2007-03-22 21:10:30 +0000
  • d128f5f6af issue 134: reduce timeout period for minidump upload : reviwer waylonis ladderbreaker 2007-03-16 18:28:53 +0000
  • 1a4310017e issue 133: Mach-o UUID generation has problems - reviewed by waylonis ladderbreaker 2007-03-16 17:51:43 +0000
  • bcd46f0079 Add Linux exception handler. Add Linux stab symbol dumper. Add minidump & symbol uploader for Linux. luly81 2007-03-12 01:53:18 +0000
  • 1f3d2571d1 fixes for issue 129 : reviewed by Waylonis ladderbreaker 2007-03-09 21:45:42 +0000
  • 530a7ad99e fixes for issue 128: reviewed by Waylonis ladderbreaker 2007-03-08 23:47:37 +0000
  • fce2508282 Fix exception handler build with MSVC versions prior to 2005. r=mmentovai. bryner 2007-03-05 21:13:23 +0000
  • e5dc60822e Rename Airbag to Breakpad. mmentovai 2007-02-14 19:51:05 +0000
  • 83befb1cb4 Change the symbol table parsing so that it will only use symbols that are from the __TEXT/__text section. Fixes issue #127 tbr=mmentovai. waylonis 2007-02-08 18:04:48 +0000
  • baff938211 Airbag windows client didn't trap VC8 parameter validation errors. Now it does. (#120) r=bryner. mmentovai 2007-02-07 20:20:10 +0000
  • 983264848d Fix bug with mach-o walker not properly walking universal binary (Issue #125) Fix exception handler so that it will properly forward exceptions (Issue #126) r=mmentovai waylonis 2007-02-07 18:57:09 +0000
  • 1d78cad82e Store 128-bit values as a struct with high and low fields, so that consumers of airbag don't have to know the platform endianness. bryner 2007-02-07 04:24:03 +0000
  • 600e56bc39 - Fixes the bug with a fork()'d child's exception being caught in the parent process - Only looks for EXC_MASK_BAD_ACCESS, EXC_MASK_BAD_INSTRUCTION, and EXC_MASK_ARITHMETIC exceptions - Adds try/catch blocks around "new" for bad_alloc - Uses map.find() rather than map[] notation so as not to create extraneous objects - Creates the exception watching thread as detached waylonis 2007-02-05 18:49:44 +0000
  • 3a9a38a29e Don't fail the minidump processing if the requesting thread can't be found. waylonis 2007-02-01 23:54:05 +0000
  • 87d965538b Only use the segments that contain sections in the identifer calculation. Fixes Issue #121. waylonis 2007-01-31 19:31:52 +0000
  • d986a54f67 Add module list to machine-readable minidump_stackwalk output (#119). Patch by Ted Mielczarek. r=me mmentovai 2007-01-29 21:30:31 +0000
  • 482e44bf51 Qualify string and vector with std namespace when used without using-declaration (#118). r=bryner mmentovai 2007-01-25 21:56:18 +0000
  • a14ef803d7 Support machine-readable output format from minidump_stackwalk; Support multiple symbol paths in SimpleSymbolSupplier (#113). Patch by Ted Mielczarek. r=me mmentovai 2007-01-25 00:17:02 +0000
  • 4b987df62b Update crash_report tool and internal classes to reflect change to ProcessState (Issue #116) waylonis 2007-01-24 00:28:24 +0000
  • d31c8b0292 Changes to support patch #108: - Calculate unique file id for mach-o files - Add file id support to dump_syms and symupload tools - Fix return values of tools to indicate success or failure - Change dump_syms class to be Objective-C++ waylonis 2007-01-23 19:17:03 +0000
  • 50e299b00e Library to handle SymSrv integration (#111). r=bryner mmentovai 2007-01-18 21:13:14 +0000
  • 48dab62c2d Be lenient when reading CodeView records of unknown types (#110). r=bryner - Read (but don't use) CodeView records with unknown signature values instead of failing. This allows the module list to be read in, and will result in better stack traces in affected dumps. mmentovai 2007-01-17 00:16:37 +0000
  • f614cb9845 Pass the exception record (EXCEPTION_POINTERS*) to callback functions from ExceptionHandler on Windows. Patch by John Abd-El-Malek. r=me mmentovai 2007-01-12 16:54:10 +0000
  • fd98b2af37 Add classes to: walk mach-o files, look for identifiers, and return a 16 byte unique identifier. Fixes #106. waylonis 2007-01-11 01:49:07 +0000
  • 97d392dc4b Communicate OS and CPU to SymbolSupplier (#107). r=bryner mmentovai 2007-01-10 22:47:56 +0000
  • 0ec76c7fad Added method to allow adding a file's contents directly. Fixes issue #105. waylonis 2007-01-04 04:43:41 +0000
  • d4e527b7ee Allows the caller of CrashReportSender::SendCrashReport() to determine that the server rejected a crash report, by changing the return value from a boolean to a tri-state enum. incrementalist 2007-01-03 23:14:46 +0000
  • 5ac2b9a569 Add Mac exception handler and generator. Fixes issue #69. Reviewed by mmentovai. waylonis 2006-12-20 17:41:55 +0000
  • c4d599912c Fix UTF32ToUTF16Char() conversion. Fixes issue #99. Reviewed by bryner. waylonis 2006-12-20 17:22:41 +0000
  • 70b5efdda7 Add Mac string utilities. Reviewed by mmentovai. Fixes issue #98. waylonis 2006-12-19 22:11:46 +0000
  • 62c79c5a40 Add Mac symupload tool. Reviewed by bryner. Fixes issue #96. waylonis 2006-12-19 21:57:09 +0000
  • 9ddb3ae949 Add Mac dump_syms tool and support class. Fixes issue #73. waylonis 2006-12-19 20:28:32 +0000
  • b65dce60f1 Add crash_report tool that will: - Generate local symbol file for module - Output minidump report in a format similar to Apple's crash reporter waylonis 2006-12-18 23:59:48 +0000
  • f755a85d93 Add Mac tools directories. waylonis 2006-12-18 22:51:26 +0000
  • a2fa3dda54 Add better support for UTF character conversions. Fixes Issue 78. waylonis 2006-12-16 01:01:19 +0000
  • 8cc32d3bb8 Add unittest for minidump file writer. Fixes issue #85. waylonis 2006-12-16 00:42:13 +0000
  • 3782a335d3 Change function declarations to match those of the header file. Amazingly, gcc did not complain. waylonis 2006-12-15 00:09:07 +0000
  • eee138c2f3 Add unicode.org UTF-8/16/32 conversion code. Add wrapper functions to make things more convenient. waylonis 2006-12-15 00:03:27 +0000
  • b7b89b3b01 Changed files_ to be a Dictionary. waylonis 2006-12-14 23:23:21 +0000
  • 5b9bc2fd5e Add the HTTP uploading class for Mac. waylonis 2006-12-14 23:17:46 +0000
  • c7b6c11f32 Fix capitalization of identifiers (#94). r=bryner mmentovai 2006-12-12 21:52:56 +0000
  • fb35cf79e2 Fix stackwalker_selftest following #89 (#95). r=bryner mmentovai 2006-12-12 21:51:36 +0000
  • fd38d48e6d Add an abstract interface to SourceLineResolver, and allow any implementation to be used with MinidumpProcessor. The basic SourceLineResolver is now a public interface (#89) bryner 2006-12-11 23:22:54 +0000
  • 65dbfcc15f Removing CRs from #81. Hey, how'd those get in there? mmentovai 2006-12-08 22:49:07 +0000
  • dd7c38baae This patch fixes Airbag issue #44. incrementalist 2006-12-08 20:45:20 +0000
  • f33b8d2d07 Provide a mechanism for SymbolSuppliers to interrupt processing (#93) bryner 2006-12-08 04:13:51 +0000
  • 283fd39248 Allow exception handler callbacks more flexibility (#81). r=bryner - Provide an optional filter callback that gets triggered before attempting to write a dump, to give client code a chance to refuse handling early in the process. - Allow exceptions that are unhandled by Airbag (due to filter callback or dump callback return value, or failure to write a dump) to be passed to the previous handler or to the system. - In order to pass exceptions unhandled by the topmost Airbag handler to lower handlers, fix up the stacking of ExceptionHandler objects, and give each ExceptionHandler object its own thread (like the Mac implementation) to avoid deadlock. - Provide a dump_path argument to callbacks, as requested by developers and already implemented in the Mac handler. - Avoid calling c_str in exception handler code (#90). mmentovai 2006-12-07 20:46:54 +0000
  • 94f07040ce Test data update following PDBSourceLineWriter change (#91). r=bryner mmentovai 2006-12-07 15:55:30 +0000
  • 93fa375b58 symupload parameters don't match processor expectations (#91). r=bryner - Interface change: the "guid" and "age" parameters supplied to a symbol server by symupload have been merged into "debug_identifier". Some other parameters have had their names changed. Additional code_file, os, and cpu parameters have been added. - Interface change: the format of the MODULE line at the top of dumped .sym files has changed slightly. The fields used for uuid and age have merged into a debug_identifier-type field. - debug_identifier is formatted the same way as CodeModule::debug_identifier for ease of server-side processing. mmentovai 2006-12-06 20:18:26 +0000
  • 28e5990b57 Fix possible null pointer dereference in MinidumpModule (following #32). r=waylonis mmentovai 2006-12-06 05:03:48 +0000
  • daf4211942 Update reporting strings for exceptions (Issue 88) Add time_date_stamp to process state. waylonis 2006-12-06 04:58:27 +0000
  • db3342a10e Module API (#32). r=waylonis, bryner - Introduces a standard API for dealing with modules. MinidumpModule is now a concrete implementation of this API. Code may interact with single modules using the CodeModule interface, and collections of modules using its container, the CodeModules interface. - CodeModule is used directly by SymbolSupplier implementations and SourceLineResolver. Reliance on the specific implementation in MinidumpModule has been eliminated. - Module lists are now added to ProcessState objects. Module references in each stack frame are now pointers to objects in these module lists. - The sample minidump_stackwalk tool prints the module list after printing all threads' stacks. mmentovai 2006-12-05 22:52:28 +0000
  • ed61ae0bbd Don't use CRT in exception handler code (#86). r=bryner mmentovai 2006-11-28 19:47:44 +0000
  • 373c49b416 Eliminate usage of vector<>[0] for 0-sized vectors in processor library (#84). r=bryner mmentovai 2006-11-27 21:42:07 +0000
  • c297c50f83 Fix a crash when attempting to upload a zero-length dump file (#83) r=mmentovai bryner 2006-11-27 18:38:39 +0000
  • 4365e2fe41 Support GUID-less PDBs (#77). r=bryner - Handle MDCVInfoPDB20-based PDBs by outputting a signature instead of a guid in the MODULE line. - Identify the OS and CPU in the MODULE line. - Suppress multiple subsequent identical STACK WIN lines. mmentovai 2006-11-21 16:58:36 +0000
  • 042ca733d3 Use the reentrant versions of strtok() and gmtime() (#79) r=mmentovai bryner 2006-11-20 20:58:10 +0000
  • 7a983e94d0 Removing erroneous svn:executable setting. mmentovai 2006-11-18 23:37:52 +0000
  • 7573d1dd44 Modify SimpleSymbolSupplier for easier sublcassing (#75). Patch by Ted Mielczarek <ted.mielczarek>. r=me mmentovai 2006-11-17 18:50:19 +0000
  • 9e586c173e Move some inlined functions to .cc file. Add some assertions. waylonis 2006-11-16 22:43:57 +0000
  • ff480d4b4b Add minidump file writer. Tested on Mac, but should compile on POSIX systems. waylonis 2006-11-16 21:52:18 +0000
  • 73cd14b4af Airbag client libraries should compile under MSVC .NET 2003/7.1 (#64). r=bryner mmentovai 2006-11-15 22:24:42 +0000
  • 8647dde8cc Limit use of default namespace in tests and utility programs (#71). r=bryner - main is now the only thing you'll find in the default namespace. Everything else has been moved into an unnamed namespace. mmentovai 2006-11-09 17:04:56 +0000
  • 76f052f8fb Suppress handler thread from appearing in MinidumpProcessor's ProcessState (#65). r=bryner - Interface change: (ProcessState).crash_thread is now requesting_thread and will be populated for non-crash dumps. If the requesting thread cannot be determined, requesting_thread is set to -1. mmentovai 2006-11-06 23:00:19 +0000
  • 5ac32b6534 Minidumps should indicate which thread generated the dump and which requested dump generation (#57). r=bryner mmentovai 2006-11-06 20:54:19 +0000
  • fe82bf24a9 Move headers for exported interfaces into src/google_airbag (#51). r=bryner mmentovai 2006-11-06 19:39:47 +0000
  • 80866e7945 Symbol file should contain module GUID at beginning (#66). r=bryner - The dumped symbol format now begins with a MODULE line identifying the uuid, age, and name of the source pdb file. - The processor ignores MODULE lines, but they are useful in figuring out how to index symbol files in a symbol store. - dump_syms and symupload now both accept either a pdb or exe/dll and will read the pdb regardless. - Figured out that MSSS always represents a module's age in pathnames in hexadecimal, and updated SimpleSymbolSupplier to match. mmentovai 2006-11-06 19:34:19 +0000
  • e47047b383 Fix minor naming inconsistency (#67). r=mmentovai waylonis 2006-11-02 01:02:39 +0000
  • b261019951 Windows exception handler does not survive stack overflows (#34). r=brian, thanks also to darin - All minidump writing is now done on a dedicated thread. When a stack overflow exception occurs, the only work that needs to be done on the exception thread will easily fit within the guard page. mmentovai 2006-10-31 16:49:38 +0000
  • 12a5245bfe Disable exception handling warnings in Windows client code (#38). Patch by Ted Mielczarek. r=me mmentovai 2006-10-27 19:47:21 +0000
  • 1bff57e589 Add set_dump_path method to ExceptionHandler (#37). Patch by Ted Mielczarek. r=me mmentovai 2006-10-27 16:10:55 +0000
  • 6b9955cc42 minidump_stackwalk should use MinidumpProcessor (#64). r=bryner - Commit missing test data. mmentovai 2006-10-27 00:41:52 +0000
  • c34850a202 minidump_stackwalk should use MinidumpProcessor (#64). r=bryner - minidump_stackwalk is now much more useful as a debugging tool and even as a standalone tool. - Reimplementation of minidump_stackwalk around MinidumpProcessor. - minidump_stackwalk displays all pertinent information returned by MinidumpProcessor in the ProcessState. - New PathnameStripper::File static utility method to display only the leaf file name in a pathname, cleaning up minidump_stackwalk's output. - New SimpleSymbolSupplier class, which implements a simple filesystem-based symbol supplier compatible with the layout used by Microsoft Symbol Server and its client cache. - minidump_stackwalk now accepts an optional second argument, a pathname to use as a symbol directory for a SimpleSymbolSupplier. - Updated test data to be compatible with SimpleSymbolSupplier, and added test data for kernel32.pdb. Test data converted from CRLF line endings to LF. mmentovai 2006-10-27 00:40:56 +0000
  • f944ba3fbb MinidumpProcessor uses the wrong context for non-crash threads (#62). r=bryner mmentovai 2006-10-26 23:09:02 +0000
  • 29401d2457 Support building with WIN32_LEAN_AND_MEAN (#60) - All Windows code now builds with WIN32_LEAN_AND_MEAN by default. - Header inclusion is adjusted as needed. Remove use of UuidToString (#39) - Also breaks dependency on RpcStringFree and therefore rpcrt4.lib. r=bryner mmentovai 2006-10-26 18:06:43 +0000
  • aa57b8e3de Add MDString to minidump_format.h (#59). r=bryner mmentovai 2006-10-26 00:27:00 +0000
  • 80e98391dc Fix minor style problems (#58). r=bryner mmentovai 2006-10-25 21:25:41 +0000
  • 0a7e6bf16c minidump_dump does not print MDRawSystemInfo::processor_revision. No bug. r=bryner mmentovai 2006-10-25 19:41:56 +0000