aboutsummaryrefslogtreecommitdiff
path: root/src/common/mac
Commit message (Collapse)AuthorAgeFilesLines
* mac dump_syms: remove unused vars to fix -Werror build failuresMike Frysinger2019-04-051-1/+0
| | | | | | | Bug: chromium:940823, chromium:946404 Change-Id: Ib8af7f0845b0488f36cd1b91326aba11bf283b0a Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1546779 Reviewed-by: Mark Mentovai <mark@chromium.org>
* mac dump_syms: Support .dSYMs > 4GB (partially)Mark Mentovai2019-03-282-10/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Even 64-bit Mach-O (MH_MAGIC_64 = 0xfeedfacf) is not a fully 64-bit file format. File offsets in sections are stored in 32-bit fields, with Mach-O writers typically truncating offsets too large to fit to just their low 32 bits. When a section begins at a file offset >= 4GB, dump_syms would produce an error such as: Google Chrome Framework.dSYM/Contents/Resources/DWARF/Google Chrome Framework: the section '__apple_names' in segment '__DWARF' claims its contents lie outside the segment's contents As a workaround, this implements the strategy I first described in https://crbug.com/940823#c22. Segment file offsets are stored in 64-bit fields. Because segments contain sections and must load contiguously, it’s possible to infer a section’s actual offset by computing its load address relative to its containing segment’s load address, and treating this as an offset into the containing segment’s file offset. For safety, this is only done for 64-bit segments (LC_SEGMENT_64) where the 32-bit section offset stored in the Mach-O file is equal to the low (truncated) 32 bits of the section offset recomputed per the above strategy. Beware that this does not provide full “large file” support for 64-bit Mach-O files. There are other file offsets within Mach-O files aside from section file offsets that are stored in 32-bit fields even in the 64-bit format, including offsets to symbol table data (LC_SYMTAB and LC_DYSYMTAB). No attempt is made to recover correct file offsets for such data because, at present, such data is always stored by dsymutil near the beginning of .dSYM files, within the first 4GB. If it becomes necessary to address these other offsets, it should be possible to recover these offsets by reference to the __LINKEDIT segment that normally contains them, provided that __LINKEDIT doesn’t span more than 4GB, according to the strategy discussed at the bottom of https://crbug.com/940823#c22. Although this is sufficient to allow dump_syms to interpret Chromium .dSYM files that exceed 4GB, be warned that these Mach-O files are still technically malformed, and most other tools that consume Mach-O files will continue to have difficulties interpreting these large files. As further warning, note that should any individual DWARF section exceed 4GB, internal section offsets will be truncated irrecoverably, unless and until the toolchain implements support for DWARF64. https://bugs.llvm.org/show_bug.cgi?id=14969 With this change, dump_syms is able to correctly recover file offsets from and continue processing a .dSYM file with length 4530593528 (4321MB), whose largest section (__DWARF,__debug_info = .debug_info) has size 0x8d64c0b8 (2262MB), and which contains four sections (starting with __DWARF,__apple_names) beginning at file offsets >= 4GB. Bug: chromium:940823, chromium:946404 Change-Id: I23f5f3b07773fa2f010204d5bb53b6fb1d4926f7 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1541830 Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org>
* breakpad: Remove semicolons, iOS edition.Nico Weber2019-02-251-1/+1
| | | | | | | Bug: chromium:926235 Change-Id: I237e7b7d89e5746beea80754675a232c881f25f6 Reviewed-on: https://chromium-review.googlesource.com/c/1487336 Reviewed-by: Mark Mentovai <mark@chromium.org>
* breakpad: Remove semicolons, mac edition.Nico Weber2019-02-221-1/+1
| | | | | | | Bug: chromium:926235 Change-Id: I473a7727c1831717b92a582c50d98256ea41d854 Reviewed-on: https://chromium-review.googlesource.com/c/1482716 Reviewed-by: Mark Mentovai <mark@chromium.org>
* Add mac dump_syms support for arm64eJoshua Peraza2018-11-261-4/+37
| | | | | | Change-Id: I6a25b47d4fc5e42ff9fa30107b563dcf1d51c0d1 Reviewed-on: https://chromium-review.googlesource.com/c/1351352 Reviewed-by: Mark Mentovai <mark@chromium.org>
* Add support for parsing the DW_AT_ranges attributesGabriele Svelto2018-08-132-1/+42
| | | | | | | | | | | | | | | | This enables the DWARF reader to properly parse DW_AT_ranges attributes in compilation units and functions. Code covered by a function is now represented by a vector of ranges instead of a single contiguous range and DW_AT_ranges entries are used to populate it. All the code and tests that assumed functions to be contiguous entities has been updated to reflect the change. DW_AT_ranges attributes found in compilation units are parsed but no data is generated for them as it is not currently needed. BUG=754 Change-Id: I310391b525aaba0dd329f1e3187486f2e0c6d442 Reviewed-on: https://chromium-review.googlesource.com/1124721 Reviewed-by: Ted Mielczarek <ted.mielczarek@gmail.com>
* Provide helper wrappers for basename(3) and dirname(3)Tobias Sargeant2017-10-181-3/+2
| | | | | | | | | | This hides the need to provide mutable C strings, and unifies existing basename calls and variations in a single location. Change-Id: Idfb449c47b1421f1a751efc3d7404f15f8b369ca Reviewed-on: https://chromium-review.googlesource.com/725731 Reviewed-by: Mark Mentovai <mark@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org>
* Make the cross-compilation glue for dump_syms Mac handle x86_64h.Markus Stange2017-05-261-4/+24
| | | | | | | | | | x86_64h has a different cpusubtype from x86_64. The h is for Haswell. BUG= Change-Id: Icf884e5699fe120c12d13aa57cd62db5b69a2ce6 Reviewed-on: https://chromium-review.googlesource.com/457171 Reviewed-by: Ted Mielczarek <ted@mielczarek.org>
* Use NSURLSession if the min version we support is iOS 7+.George Kola2017-03-091-7/+5
| | | | | | | | | | | | | | | Because many apps still support iOS 8, they were defaulting to deprecated NSURLConnection even if the code ran on iOS 10. NSURLConnection requires a run loop and hence the code did not always upload if the queue ran on a thread without a Run Loop. This should improve break pad uploads BUG= Change-Id: I7bff80ea977fd1ab13c8812ed933ef842dab417f Reviewed-on: https://chromium-review.googlesource.com/451880 Reviewed-by: Sylvain Defresne <sdefresne@chromium.org> Reviewed-by: Mark Mentovai <mark@chromium.org>
* macho_reader_unittest: use EXPECT_FALSEMike Frysinger2017-02-121-2/+2
| | | | | | | | | | | | | | | | | | | This avoids compile time errors: In file included from ./src/testing/googletest/include/gtest/gtest.h:1874:0, from ./src/breakpad_googletest_includes.h:33, from src/common/mac/macho_reader_unittest.cc:39: src/common/mac/macho_reader_unittest.cc: In member function 'virtual void LoadCommand_SegmentBE32_Test::TestBody()': ./src/testing/googletest/include/gtest/internal/gtest-internal.h:133:55: error: converting 'false' to pointer type for argument 1 of 'char testing::internal::IsNullLiteralHelper(testing::internal::Secret*)' [-Werror=conversion-null] (sizeof(::testing::internal::IsNullLiteralHelper(x)) == 1) ^ ... src/common/mac/macho_reader_unittest.cc:1117:3: note: in expansion of macro 'EXPECT_EQ' EXPECT_EQ(false, actual_segment.bits_64); Change-Id: I0cf88160dbe17b0feebed3c91ad65491b81023fd Reviewed-on: https://chromium-review.googlesource.com/439004 Reviewed-by: Mark Mentovai <mark@chromium.org>
* Update linksOrgad Shaneh2016-11-181-1/+1
| | | | | | | | | | code.google.com is obsolete. Fix all broken markdown links while at it. Change-Id: I6a337bf4b84eacd5f5c749a4ee61331553279009 Reviewed-on: https://chromium-review.googlesource.com/411800 Reviewed-by: Mike Frysinger <vapier@chromium.org>
* Corrected some old references to mm files, which were renamed to cc files a ↵Ivan Penkov2016-09-011-1/+1
| | | | | | | | | | | | while ago. Patch provided by Thomas Schweitzer. BUG= Change-Id: I1721db8cab7774b433ff6703a0ddc1eab6620c0b Reviewed-on: https://chromium-review.googlesource.com/379898 Reviewed-by: Mark Mentovai <mark@chromium.org>
* Replaced glibc version of elf.h with musl version of elf.h.Dave MacLachlan2016-05-121-16/+0
| | | | | | | | | Updated dump_syms xcode project and ran tests. BUG= R=vapier@chromium.org Review URL: https://codereview.chromium.org/1973113002 .
* Fixes up dump_syms build on OS X so it works with ELF.Dave MacLachlan2016-05-122-8/+20
| | | | | | | | | | | | | | | Adds elf.h header from glibc. Updates dwarf2reader.cc so it isn't comparing a unique_ptr against NULL. Moves from MacOS10.5 SDK to latest SDK for Xcode project. Moves from using gcc to clang for dump_syms tests. Disables warning about 'Missing Field In Structure Initializers' to temporarily work around https://bugs.chromium.org/p/google-breakpad/issues/detail?id=697. With this patch all tests form dump_syms pass again using Xcode 7.3 on Mac OS X 10.11. BUG= https://bugs.chromium.org/p/google-breakpad/issues/detail?id=696, https://bugs.chromium.org/p/google-breakpad/issues/detail?id=697 R=mark@chromium.org Review URL: https://codereview.chromium.org/1970903002 .
* Add debug fission support.Yunlian Jiang2016-05-041-1/+2
| | | | | | | | | | | | | | | | | | | | | This added debug fission support. It tries to find the dwp file from the debug dir /usr/lib/debug/*/debug and read symbols from them. Most of this patch comes from https://critique.corp.google.com/#review/52048295 and some fixes after that. The elf_reader.cc comes from TOT google code. I just removed some google dependency. Current problems from this patch 1: Some type mismatch: from uint8_t * to char *. 2: Some hack to find the .dwp file. (replace .debug with .dwp) BUG=chromium:604440 R=dehao@google.com, ivanpe@chromium.org Review URL: https://codereview.chromium.org/1884283002 .
* macho: fix printf type mismatchesMike Frysinger2016-05-041-3/+3
| | | | | | | | | The %ld expects a long signed integer, but we're passing in a size_t. Use %zu which is an unsigned size_t type. R=ted.mielczarek@gmail.com Review URL: https://codereview.chromium.org/1951603002 .
* Remove GTM_ENABLE_LEAKS and GTMGarbageCollectionDave MacLachlan2016-04-211-72/+0
| | | | | | | | | Removes some archaic Google Toolbox For Mac features. BUG= R=ivanpe@chromium.org, mark@chromium.org Review URL: https://codereview.chromium.org/1912473002 .
* Added an option (-i) to have dump_syms output header information only.David Yen2016-04-082-54/+81
| | | | | | | | | | | | | | | | | It is often helpful to check if a particular symbol file dumped by dump_syms actually matches a version of a binary file we have. The symbol output contains an ID which can be used to see if it matches the binary file. Unfortunately, this ID is internally calculated and not a standard hash of the binary file. Being able to output the header information only will allow users to determine whether their symbol file is up to date or not. R=jochen@chromium.org BUG=561447 Review URL: https://codereview.chromium.org/1864823002 . Patch from David Yen <dyen@chromium.org>.
* Fix usage of deprecated method sendSynchronousRequest:returningResponse:error:.Sylvain Defresne2016-02-081-3/+43
| | | | | | | | | | | | | The method -[NSURLConnection sendSynchronousRequest:returningResponse:error:] has been deprecated in 10.11 OS X SDK and 9.0 iOS SDK without replacement. So emulate a synchronous request by using an asynchronous request and waiting on a semaphore for the request completion. BUG=https://bugs.chromium.org/p/google-breakpad/issues/detail?id=675 BUG=569158 R=mark@chromium.org Review URL: https://codereview.chromium.org/1675243002 .
* Fix usage of deprecated method stringByAddingPercentEscapesUsingEncoding:.Sylvain Defresne2016-02-081-4/+19
| | | | | | | | | | | | | | | | The method -[NSString stringByAddingPercentEscapesUsingEncoding:] has been deprecated with 10.11 OS X SDK and 9.0 iOS SDK. The recommended method is -[NSString stringByAddingPercentEncodingWithAllowedCharacters:] available since 10.9 OS X SDK and 7.0 iOS SDK. Use the new method when available using URLQueryAllowedCharacterSet to get the same encoded string. BUG=https://bugs.chromium.org/p/google-breakpad/issues/detail?id=675 BUG=569158 R=mark@chromium.org Review URL: https://codereview.chromium.org/1680663002 .
* convert to uint8_t* for binary data to fix -Wnarrowing build errorsMike Frysinger2016-01-261-4/+5
| | | | | | | | | | | | | | | Newer gcc versions default to -Werror=narrowing when using newer C++ standards (which we do). This causes issues when we try to stuff a value like 0xea into a char -- the value is out of range for signed char bytes. That's when gcc throws an error: .../bytereader_unittest.cc: In member function 'virtual void Reader_DW_EH_PE_absptr4_Test::TestBody()': .../bytereader_unittest.cc:400:55: error: narrowing conversion of '234' from 'int' to 'char' inside { } [-Wnarrowing] BUG=chromium:579384 TEST=`make check` passes R=mark@chromium.org Review URL: https://codereview.chromium.org/1605153004 .
* Revert "Fix deprecatation warning when building for recent SDKs on iOS/OS X."Olivier Robin2016-01-211-59/+7
| | | | | | | | | | | | | | | | | | | | This reverts CL https://codereview.chromium.org/1563223004/ This reverts commit 7cc0d8562bf8b20b88cc941ba72593cb7230ecf6. CL 1563223004 introduces two bugs on iOS. - Encoding the minidump name with extra percent causing crash server to fail processing the file. - Using a released pointer causing random crashes on upload. The data, resp, err pointers returned in the NSURLSession completion handler is released at the end of the block. When used later (to get the crash ID), it causes a crash. BUG=569158 R=blundell@chromium.org, mark@chromium.org Review URL: https://codereview.chromium.org/1619603002 . Patch from Olivier Robin <olivierrobin@chromium.org>.
* Fix deprecatation warning when building for recent SDKs on iOS/OS X.Sylvain Defresne2016-01-071-7/+59
| | | | | | | | | | | | | | | | | | | | | | | | Fixes the following compilation warning when using recent version of the iOS or OS X SDK by using the recommended new API: ../../breakpad/src/common/mac/HTTPMultipartUpload.m:56:10: error: 'stringByAddingPercentEscapesUsingEncoding:' is deprecated: first deprecated in iOS 9.0 - Use -stringByAddingPercentEncodingWithAllowedCharacters: instead, which always uses the recommended UTF-8 encoding, and which encodes for a specific URL component or subcomponent since each URL component or subcomponent has different rules for what characters are valid. [-Werror,-Wdeprecated-declarations] [key stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding]; ^ CFURLCreateStringByAddingPercentEscapes ../../breakpad/src/common/mac/HTTPMultipartUpload.m:207:29: error: 'sendSynchronousRequest:returningResponse:error:' is deprecated: first deprecated in iOS 9.0 - Use [NSURLSession dataTaskWithRequest:completionHandler:] (see NSURLSession.h [-Werror,-Wdeprecated-declarations] data = [NSURLConnection sendSynchronousRequest:req ^ ../../breakpad/src/client/mac/handler/minidump_generator.cc:158:6: error: 'CFPropertyListCreateFromXMLData' is deprecated: first deprecated in iOS 8.0 - Use CFPropertyListCreateWithData instead. [-Werror,-Wdeprecated-declarations] (CFPropertyListCreateFromXMLData(NULL, data, kCFPropertyListImmutable, ^ BUG=https://bugs.chromium.org/p/google-breakpad/issues/detail?id=675 BUG=569158 R=mark@chromium.org Review URL: https://codereview.chromium.org/1563223004 .
* [mac] Teach dump_syms to handle additional zerofill sectionsPavel Labath2015-09-301-1/+3
| | | | | | | | | | | | | | This patch allows dump_syms to handle S_THREAD_LOCAL_ZEROFILL and S_GB_ZEROFILL section in the same way as the more common S_ZEROFILL section. Previously, dump_syms would fail to dump a binary containing a __DATA,__thread_bss section, because it tried to look up its data (and failed). R=mark@chromium.org Review URL: https://codereview.chromium.org/1369233003 . Patch from Pavel Labath <labath@google.com>.
* Fixup a bad strcmp call landed in previous commitTed Mielczarek2015-09-161-1/+1
|
* Fix Mac Breakpad host tools to build in Linux cross-compileTed Mielczarek2015-09-1610-163/+379
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're working on building our Firefox Mac builds as a Linux cross-compile (https://bugzilla.mozilla.org/show_bug.cgi?id=921040) and we need symbol dumping to work. This change ports the Mac dump_syms tool to build and work on Linux. I've tested it and it produces identical output to running the tool on Mac. The bulk of the work here was converting src/common/mac/dump_syms.mm and src/tools/mac/dump_syms/dump_syms_tool.mm from ObjC++ to C++ and removing their use of Foundation classes in favor of standard C/C++. This won't compile out-of-the-box on Linux, it requires some Mac system headers that are not included in this patch. I have those tentatively in a separate patch to land in Gecko (http://hg.mozilla.org/users/tmielczarek_mozilla.com/mc/rev/5fb8da23c83c), but I wasn't sure if you'd be interested in having them in the Breakpad tree. We could almost certainly pare down the set of headers included there, I didn't spend too much time trying to minimize them (we primarily just need the Mach-O structs and a few associated bits). I just realized that this patch is missing updating the XCode project files (ugh). I'll fix that up in a bit. R=mark@chromium.org BUG=https://bugzilla.mozilla.org/show_bug.cgi?id=543111 Review URL: https://codereview.chromium.org/1340543002 .
* Use local variable for out parameter rather than direct use of ivarivanpe@chromium.org2015-06-201-2/+3
| | | | | | | | | | | | - Resolves spurious static analyzer warning about response_ being potentially leaked due to the retain in Xcode 6.3 and later. I'm submitting this on behalf of Brian Moore. R=qsr@chromium.org Review URL: https://codereview.chromium.org/1171693007 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1460 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Support object files larger than 2**32.erikchen@chromium.org2015-04-225-38/+186
| | | | | | | Reviewed at https://breakpad.appspot.com/7834002/#ps340001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1453 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Mac: Add support for in-process crash reporting to Breakpad.andresantoso@chromium.org2014-09-152-0/+127
| | | | | | | | | | | | | | | Add new option BREAKPAD_IN_PROCESS. If YES, Breakpad will write the dump file in-process and then launch the reporter executable as a child process. Originally reviewed at https://codereview.chromium.org/571523004/ BUG=chromium:414239 R=mark@chromium.org Review URL: https://breakpad.appspot.com/1714002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1375 4c0a9323-5329-0410-9bdc-e9ce6186880e
* This CL initialize NSData in HTTPMultipartUpload.m to nil.qsr@chromium.org2014-09-121-1/+1
| | | | | | | | | | | | Problem introduced by issue 2764002. R=qsr@chromium.org Review URL: https://breakpad.appspot.com/2794002 Patch from Oliver Robin <olivierrobin@chromium.org>. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1374 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Adding possibility for client to upload the fileblundell@chromium.org2014-09-011-6/+10
| | | | | | | | | | | | | | | | | | This CL adds three features that will allow the client to upload the report file. Three main modifications are made : - Allow upload url to have a file:// scheme, and write the HTTP request to file in that case - Split the request in two parts in case of a file:// scheme, the request time and the response time. A new API [handleNetworkResponse] is added. - Give the opportunity to the client to get the configuration NSDictionary to be able to recreate the breakpad context at response time. Patch by Olivier Robin <olivierrobin@chromium.org> Review URL: https://breakpad.appspot.com/2764002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1368 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add Arm64 support to dumpsyms.rmcilroy@chromium.org2014-04-291-0/+7
| | | | | | | | | | | | Adds Arm64 support to dumpsyms, enabling support for EM_AARCH64 elf type and arm64 registers in DwarfCFIToModule. BUG=367367,335641,354405 R=mark@chromium.org Review URL: https://breakpad.appspot.com/1654002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1322 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fixing compiler warnings:ivan.penkov@gmail.com2014-02-282-2/+2
| | | | | | | | | | | | - 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
* Initialize file descriptors to -1, not 0, in MachoWalker.mark@chromium.org2014-02-261-2/+2
| | | | | | | | R=ivan.penkov@gmail.com Review URL: https://breakpad.appspot.com/1174002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1284 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Update GTM and enable -Wundef and strict C++11 flags.dmaclach2014-02-263-90/+29
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1283 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Do not read CFI section when not outputing CFI information.qsr@chromium.org2013-12-041-10/+14
| | | | | | | | | | | This revert revision 1182 and fix setting the module load address whether CFI information is needed or not. R=mark@chromium.org Review URL: https://breakpad.appspot.com/641002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1243 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Support symbol dumping for ARMV8 iOS apps.qsr@chromium.org2013-10-152-0/+37
| | | | | | | | | | | | | | | In my testing, ARM V8 object files and ARM V8 slices of universal binaries do not contain debug_frame sections (at least at this time), and hence dump_syms does not output CFI for ARM V8 even in the absence of the "-c" flag. Patch by:blundell@chromium.org BUG=542 R=qsr@chromium.org Review URL: https://breakpad.appspot.com/642002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1222 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Always read CFI section, even when not outputing CFI information.qsr@chromium.org2013-05-161-8/+6
| | | | | | | | | | | | On iOS at least, the CFI section contains information needed to correctly dump the symbols. Even if the CFI section is not dumped, reading it is necessary to get correcty symbolication. R=mark@chromium.org, ted.mielczarek@gmail.com Review URL: https://breakpad.appspot.com/596002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1182 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix following r1175: the section name is __debug_info, not .debug_info.mark@chromium.org2013-05-091-1/+1
| | | | | | Review URL: https://breakpad.appspot.com/583003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1178 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix mac dump_syms after r1163.thestig@chromium.org2013-05-082-15/+31
| | | | | | | | R=mark@chromium.org Review URL: https://breakpad.appspot.com/592002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1175 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Rewrite SimpleStringDictionary with NonAllocatingMap.rsesek@chromium.org2013-04-241-0/+1
| | | | | | | | | | | NonAllocatingMap has a near-identical interface, but is significantly less code, more customizable, and has storage that is POD. BUG=http://code.google.com/p/chromium/issues/detail?id=77656 Review URL: https://breakpad.appspot.com/568002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1161 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Move SimpleStringDictionary from common/mac/ to just common/.rsesek@chromium.org2013-04-182-328/+0
| | | | | | | | | | | | This also cleans up some things like the file name, trailing whitespace, and making the test use gtest instead of sentest, since there's nothing Mac specific about this. BUG=https://code.google.com/p/chromium/issues/detail?id=77656 Review URL: https://breakpad.appspot.com/561003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1154 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Provide a ReadSymbolData API for Mac dump_symsted.mielczarek@gmail.com2013-03-062-5/+29
| | | | | | R=mark at https://breakpad.appspot.com/522002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1128 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow reading just CFI data when reading symbolsted.mielczarek@gmail.com2013-03-062-18/+33
| | | | | | R=thestig at https://breakpad.appspot.com/517002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1124 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Use stdint types everywhereted.mielczarek@gmail.com2013-03-061-4/+4
| | | | | | R=mark at https://breakpad.appspot.com/535002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1121 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Include the compilation directory for FILE entries, making them absolute ↵ted.mielczarek@gmail.com2013-01-231-4/+10
| | | | | | | | instead of relative A=Ryan Sleevi <rsleevi@chromium.org> R=mark,ted at https://breakpad.appspot.com/385001/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1106 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
* Update dump_syms to correctly filter on cpu subtype.qsr@chromium.org2012-10-048-62/+90
| | | | | | | 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
* Add custom implementation of NXGetArchInfoXXX to allow adding new arch.qsr@chromium.org2012-10-033-7/+135
| | | | | | | | | NXGetArchInfoXXX depends on the OS knowledge of architecture. This CL adds a custom implementation of those methods to be able to handle newer CPU before they are handled by the OS. It also add handling for armv7s architecture. Review URL: https://breakpad.appspot.com/475002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1057 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Turn on more warnings in ios / mac projects.qsr@chromium.org2012-09-212-3/+5
| | | | | | | | | | | | | | | 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