ted.mielczarek@gmail.com
93a48343ee
Fix some more Win32 compat issues in processor code
...
R=mark at https://breakpad.appspot.com/535003/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1122 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-03-06 14:06:52 +00:00
ted.mielczarek@gmail.com
aeffe1056f
Use stdint types everywhere
...
R=mark at https://breakpad.appspot.com/535002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1121 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-03-06 14:04:42 +00:00
ted.mielczarek@gmail.com
c02002a581
Work around Windows headers #defining ERROR by renaming enum values in StackFrameSymbolizer
...
Patch by Julian Seward <jseward@acm.org>, R=ted
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1120 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-03-04 15:42:50 +00:00
ted.mielczarek@gmail.com
cd04fe2c88
Remove unnecessary #include unistd.h
...
(no review, trivial change)
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1119 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-03-01 17:33:25 +00:00
ted.mielczarek@gmail.com
7d1e1e273a
Make CompareStringPtrs::operator() a const method
...
Patch by Julian Seward <jseward@acm.org>, R=ted
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1118 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-28 19:52:51 +00:00
ted.mielczarek@gmail.com
111cce8a88
Add missing "using std::sort" to dwarf_cu_to_module.cc.
...
Patch by Julian Seward <jseward@acm.org>, R=ted
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1117 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-28 19:52:37 +00:00
ted.mielczarek@gmail.com
7a469b1031
Fix DumpSymbols error message when using multiple debug_dirs, followup from r1102.
...
Patch by Julian Seward <jseward@acm.org>, R=ted
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1116 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-27 16:43:26 +00:00
ted.mielczarek@gmail.com
24c9dfed8a
size_limit_ member of minidump_descriptor ignored in copy constructor
...
Patch by Avishai Hendel <avish@fb.com>, R=mkrebs at https://codereview.appspot.com/7305060/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1114 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-14 14:03:54 +00:00
ted.mielczarek@gmail.com
0513eeca07
Make MmapWrapper a little less silly
...
R=thestig at https://breakpad.appspot.com/527002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1113 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-14 14:03:51 +00:00
ted.mielczarek@gmail.com
bd6d0964e7
Fix some issues with -Werror=sign-compare on Android builds
...
R=digit at https://breakpad.appspot.com/524002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1110 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-01 19:20:34 +00:00
qsr@chromium.org
00407e09c7
Add API to find out if there is crash reports to send to the server.
...
Review URL: https://breakpad.appspot.com/518002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1109 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-02-01 09:49:09 +00:00
ted.mielczarek@gmail.com
52925cb9b3
minidump_stackwalk: Show argument registers for ARM stack traces
...
Patch by Michael Krebs <mkrebs@chromium.org>, R=ted at https://breakpad.appspot.com/497002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1108 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-31 19:49:03 +00:00
ted.mielczarek@gmail.com
015e79275e
Remove a call to new[] from WriteDSODebugStream
...
R=mark at https://breakpad.appspot.com/523002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1107 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-31 16:15:55 +00:00
ted.mielczarek@gmail.com
1f87c4a732
Include the compilation directory for FILE entries, making them absolute 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
2013-01-23 18:01:28 +00:00
jimblandy
be81ededf8
Print the correct return address, even on architectures where StackFrame::instruction is offset.
...
a=bruce.dawson, r=jimblandy
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1105 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-22 22:38:41 +00:00
thestig@chromium.org
d2153d7589
Fix remaining processor/scoped_ptr.h references for reals.
...
Review URL: https://breakpad.appspot.com/516003
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1104 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-22 18:49:58 +00:00
thestig@chromium.org
1c4f4a776c
Fix remaining processor/scoped_ptr.h references after r1096.
...
Review URL: https://breakpad.appspot.com/516002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1103 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-22 17:20:42 +00:00
ted.mielczarek@gmail.com
c6f6d9ef30
Make DumpSymbols methods take a vector of debug_dirs
...
r=thestig at https://breakpad.appspot.com/512002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1102 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-22 13:36:39 +00:00
thestig@chromium.org
834f7ee611
Remove <(library) usage from gyp files.
...
BUG=chromium:111541
Patch by Thiago Farina <tfarina@chromium.org>.
Original code review: https://breakpad.appspot.com/513002/
Review URL: https://breakpad.appspot.com/515002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1101 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-19 00:19:16 +00:00
ted.mielczarek@gmail.com
7e72c6677a
Provide a ReadSymbolData function to get symbol data in a Module instead of just serializing it
...
R=thestig at https://breakpad.appspot.com/510002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1099 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-18 20:24:16 +00:00
ted.mielczarek@gmail.com
e086f8a9c8
Don't make MmapWrapper's destructor assert
...
R=mark at https://breakpad.appspot.com/511002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1098 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-18 13:51:05 +00:00
ted.mielczarek@gmail.com
a151d78133
Fix a couple of warnings in stack_frame_symbolizer code
...
R=SiyangXie at https://breakpad.appspot.com/509003/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1097 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-18 13:40:40 +00:00
ted.mielczarek@gmail.com
63c5d98003
Move scoped_ptr.h to common
...
R=mark at https://breakpad.appspot.com/509002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1096 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-17 15:53:56 +00:00
mark@chromium.org
44356b590b
ExceptionHandler::HandleSignal
...
(https://code.google.com/searchframe#OAMlx_jo-ck/src/breakpad/src/client/linux/handler/exception_handler.cc&exact_package=chromium&q=SI_USER&type=cs&l=389 )
requires si_pid to be equal to getpid() for SI_USER signals.
This is a patch by Lei Zhang (thestig@chromium.org ) that fixes the issue with
Chrome+ASan being unable to upload the crash dump to the crash server when the
seccomp sandbox is on.
Patch by Alexander Potapenko <glider@chromium.org>
Review URL: https://codereview.appspot.com/7066068/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1095 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-14 18:53:18 +00:00
jimblandy
a8426a5c66
DWARF can store DW_AT_high_pc as either an address or a constant. In the latter
...
case it's the length of the function. breakpad always treats it as an address.
a=mattdr, r=jimb
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1094 4c0a9323-5329-0410-9bdc-e9ce6186880e
2013-01-08 02:14:44 +00:00
qsr@chromium.org
3d451f31d8
Fix typo.
...
Review URL: https://breakpad.appspot.com/506002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1093 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-17 14:48:45 +00:00
qsr@chromium.org
bdd7220794
Updating BreakpadController to allow start and stop being nop.
...
When BreakpadController is already started or stopped, trying to restart it or
restopping it will now be no-op instead of asserting.
Review URL: https://breakpad.appspot.com/505002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1092 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-17 14:20:13 +00:00
mark@chromium.org
6aab1f92bb
Remove dead code.
...
Patch by Rafael Espindola <rafael.espindola@gmail.com>
Review URL: http://breakpad.appspot.com/502003/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1091 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-12 04:02:58 +00:00
mkrebs@chromium.org
b7aeb98608
Fix minidump size limit used for MinidumpSizeLimit unittest
...
If the stack sizes for threads in the MinidumpSizeLimit test are too big,
then subtracting 64KB from the normal minidump file size is not enough to
trigger the size-limiting logic. Instead of basing the arbitrary limit off
of the normal file size, make it relative to the 8KB stack size the logic
assumes.
BUG=google-breakpad:510
TEST=Ran unittests
Review URL: https://breakpad.appspot.com/504002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1090 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-12 02:30:09 +00:00
mark@chromium.org
d4df92aedc
Allow the Mac and iOS Breakpad clients to build without exceptions when the 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
2012-12-11 13:46:41 +00:00
ivan.penkov@gmail.com
947ef27362
The Google-breakpad processor rejects (ignores) context records that lack CPU type information in their context_flags fields. Such context records can be valid (e.g. contexts captured by ::RtlCaptureContext).
...
http://code.google.com/p/google-breakpad/issues/detail?id=493
http://breakpad.appspot.com/500002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1088 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-08 03:18:52 +00:00
mark@chromium.org
bf6d350a68
Explicitly include unistd.h for getpagesize().
...
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
2012-12-07 21:31:00 +00:00
ted.mielczarek@gmail.com
0a636257d4
Allow StackwalkerARM to scan much farther to find the caller of the context frame
...
R=jimb at https://breakpad.appspot.com/501002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1086 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-12-04 19:30:31 +00:00
qsr@chromium.org
ac9324da7a
Add assertion on initialization sequence.
...
The order at which to call the controller methods is:
1) Any method that change the configuration_ field
2) start
3) Any other method
This change adds assertion that it is done correctly.
Review URL: https://breakpad.appspot.com/499003
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1085 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-28 17:04:52 +00:00
ivan.penkov@gmail.com
f6864d2ead
Fix unused variable warning in optimized build (fix proveded by Matthew Riley)
...
http://breakpad.appspot.com/499002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1084 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-21 01:38:58 +00:00
ivan.penkov@gmail.com
c937b0ee01
Cleaning up google-breakpad source code of signed-unsigned comparison warnings
...
http://breakpad.appspot.com/488002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1083 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-21 01:33:08 +00:00
mkrebs@chromium.org
d80f175c1a
Add optional file size limit for minidumps
...
When there are upwards of 200 threads in a crashing process, each having an
8KB stack, this can result in a huge, 1.8MB minidump file. So I added a
parameter that, if set, can compel the minidump writer to dump less stack.
More specifically, if the writer expects to go over the limit (due to the
number of threads), then it will dump less of a thread's stack after the
first 20 threads.
There are two ways to specify the limit, depending on how you write minidumps:
1) If you call WriteMinidump() directly, there's now a version of the
function that takes the minidump size limit as an argument.
2) If you use the ExceptionHandler class, the MinidumpDescriptor object you
pass to it now has a set_size_limit() method you would call before
passing it to the constructor.
BUG=chromium-os:31447, chromium:154546
TEST=Wrote a size-limit unittest; Ran unittests
Review URL: https://breakpad.appspot.com/487002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1082 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-15 00:01:13 +00:00
mkrebs@chromium.org
1b75bf9f8a
Fix assertion failure in WriteMappings() for zero modules
...
If there were no mappings where ShouldIncludeMapping() returned true,
AllocateObjectAndArray() would die with an assertion failure.
BUG=chrome-os-partner:14914
TEST=Ran unittests
Review URL: https://breakpad.appspot.com/492002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1081 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-14 22:01:35 +00:00
thestig@chromium.org
bbcdd7711f
Fix typo from r1079.
...
TBR=digit
Review URL: https://breakpad.appspot.com/496002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1080 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-13 02:58:56 +00:00
thestig@chromium.org
81885eea47
Linux: Avoid truncating the vendor id.
...
Review URL: https://breakpad.appspot.com/495002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1079 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-09 19:15:06 +00:00
thestig@chromium.org
d45abdd839
Minor cleanup in src/client/linux/minidump_writer/minidump_writer_unittest.cc.
...
Review URL: https://breakpad.appspot.com/486002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1078 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-08 03:12:03 +00:00
ted.mielczarek@gmail.com
fc6f700bb5
Allow processing dumps with missing stack memory for some threads
...
r=mkrebs at https://breakpad.appspot.com/413002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1077 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-06 16:50:01 +00:00
ivan.penkov@gmail.com
66a21aad61
Wrong %ebp after skipping a frame for which the instruction pointer is not in a known module.
...
http://breakpad.appspot.com/494002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1076 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-02 21:43:58 +00:00
ivan.penkov@gmail.com
6b91f41a7c
SuspendThread returns a DWORD value, so checking the return value with ">= 0"
...
doesn't work. On failure, the return value is (DWORD) -1 (which is
0xFFFFFFFF).
http://breakpad.appspot.com/491002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1075 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-01 21:49:06 +00:00
SiyangXie@gmail.com
c14298db63
Fix a compile warning in stack_frame_symbolizer.cc
...
http://breakpad.appspot.com/493002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1074 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-11-01 20:58:23 +00:00
ivan.penkov@gmail.com
df8e3973f4
Fixing Windows client unit tests. They were broken in r1034 due to gMock and
...
gTest upgrade. While fixing the broken tests I also used the opportunity to add
a few more tests that cover filter and callback execution, and nesting of
exception handlers.
https://breakpad.appspot.com/489002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1073 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-10-19 18:51:05 +00:00
ted.mielczarek@gmail.com
f9a63cb164
Fix some compiler errors in exception_handler_unittest by casting like crazy
...
R=digit at https://breakpad.appspot.com/483002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1072 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-10-15 11:59:45 +00:00
SiyangXie@gmail.com
ff8cad8ae6
Check-in stack_frame_symbolizer.[h|cc] that were missing in r1068.
...
http://breakpad.appspot.com/484002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1069 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-10-11 17:58:37 +00:00
SiyangXie@gmail.com
bab770045b
Refactor the logic of resolving source line info into helper class.
...
http://breakpad.appspot.com/459002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1068 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-10-10 21:41:52 +00:00
digit@chromium.org
f72b9c6ff4
Make Linux signal handler more robust.
...
Breakpad can be used on processes where a mistaken
library saves then restores one of our signal handlers
with 'signal' instead of 'sigaction'.
This loses the SA_SIGINFO flag associated with the
Breakpad handler, and in some cases (e.g. Android/ARM
kernels), the values of the 'info' and 'uc' parameters
that ExceptionHandler::SignalHandler() receives will
be completely bogus, leading to a crash when the function
is executed (and of course, no minidump generation).
To work-around this, have SignalHandler() check the state
of the flag. If it is incorrectly unset, re-register with
'sigaction' and the correct flag, then return. The signal
will be re-thrown, and this time the function will be
called with the correct values.
Review URL: https://breakpad.appspot.com/481002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1067 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-10-09 18:03:25 +00:00