digit@chromium.org
62d486be7c
Improve Android support
...
This patch remove many Android-specific #ifdefs from the Breakpad
source code. This is achieved by providing "fixed-up" platform
headers (e.g. <signal.h> or <sys/user,h>), in the new directory
src/common/android/include/, which masks differences between
the NDK and GLibc headers.
The old "android_link.h" and "android_ucontext.h" are moved
and renamed.
This also requires putting this directory as the first
include path during Android-hosted builds, hence the
modification of Makefile.am and configure.ac
Review URL: https://breakpad.appspot.com/434002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1017 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-21 14:34:48 +00:00
digit@chromium.org
d270dcfa18
Fix Android build.
...
This patch fixes the Android build, and updates the NDK test
application to use the new Linux ExceptionHandler API.
+ Use string insted of std::string in minidump_descriptor.h
Review URL: https://breakpad.appspot.com/433002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1016 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-20 20:22:05 +00:00
qsr@chromium.org
5f57e963d0
Getting context information from the kernel when catching a SIGABRT on iOS.
...
Until now, the context information was the current one when receiving a
SIGABRT. This is mainly wrong because the signal handler start in a new
context. This instead use the context passed to the signal handler.
Review URL: https://breakpad.appspot.com/435002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1015 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-20 13:42:09 +00:00
ivan.penkov@gmail.com
e050c46a53
Fixing a Windows compiler warning in src/client/windows/crash_generation/minidump_generator.cc
...
http://breakpad.appspot.com/432002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1014 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-17 01:41:05 +00:00
ivan.penkov@gmail.com
d7de392b05
Fixing a race condition in the Crash Generation Server which has to
...
do with simultaneous handling of dump requests and client process
termination events.
http://breakpad.appspot.com/430002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1013 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-15 22:09:42 +00:00
mark@chromium.org
066d09538f
Make ExceptionHandler::HandleSignal() public.
...
Patch by Alexander Potapenko <glider@chromium.org >
Review URL: https://codereview.appspot.com/6461052/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1008 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-10 15:41:19 +00:00
jcivelli@chromium.org
43c933d7f8
Adding a way to create an ExceptionHandler that takes in a file descriptor
...
where the minidump should be created, without the need of opening any other
file.
BUG=None
TEST=Run unit-tests.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1007 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-09 22:59:58 +00:00
ivan.penkov@gmail.com
fd7870028f
Conditionally compiling a unittest - based on whether AddressSanitizer is used.
...
http://breakpad.appspot.com/428002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1004 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-06 21:44:25 +00:00
digit@chromium.org
e0555f5bdf
SORRY. It seems I've screwed up my commit for http://breakpad.appspot.com/411002/ , since revision 1001 only contains the new src/client/linux/linux_libc_support.cc and none of the other required files.
...
I'm not sure what happened, but I'm re-uploading the patch has another issue.
Review URL: https://breakpad.appspot.com/426002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1002 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-03 15:01:52 +00:00
digit@chromium.org
8f59faffd1
Android ucontext_t handling refinement.
...
This is a forward-compatible patch to prepare for future versions
of the Android C library headers that define ucontext_t.
When this patch is applied, Google Breakpad will build and work
properly against any version of the NDK or platform headers.
See http://code.google.com/p/android/issues/detail?id=34784 for
more context.
Review URL: https://breakpad.appspot.com/416002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1000 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-08-01 17:36:59 +00:00
mark@chromium.org
c578271545
Speculatively back out r984. See http://codereview.chromium.org/10805065/
...
and
http://build.chromium.org/p/chromium/builders/NACL%20Tests%20%28x64%29/builds/34563
chrome src/native_client/tests/inbrowser_crash_test/crash_dump_tester.py says
that the observed failures are a symptom of crash_service.exe itself crashing.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@999 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-25 15:34:00 +00:00
mark@chromium.org
3279794487
Speculatively back out r989 per http://codereview.chromium.org/10805065/ :
...
Ted Mielczarek:
> You could try backing out r989, although Mozilla has been running with that
> patch for months without issue.
Me:
> src/client/windows/handler/exception_handler.cc in r989 appears to have
> formatting problems, an unwanted property change, and no real Breakpad review
> history, so maybe we should back it out anyway until the proper process is
> followed.
NACL Tests nacl_integration failures:
http://build.chromium.org/p/chromium/builders/NACL%20Tests/builds/30138
chrome src/native_client/tests/inbrowser_crash_test/crash_dump_tester.py says
that the observed failures are a symptom of crash_service.exe itself crashing.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@998 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-24 22:45:30 +00:00
mark@chromium.org
28970fab19
Back out r996, reinstating r985. That wasn't it.
...
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@997 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-24 20:33:12 +00:00
mark@chromium.org
febb444dcd
Speculatively back out r985 because it may be causing crash_service problems
...
for Chrome. See http://codereview.chromium.org/10805065/ . I'll recommit this
if it wasn't the problem.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@996 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-24 19:36:34 +00:00
thestig@chromium.org
6b563c50dd
Linux: Fix a bunch of clang errors from not handling return values.
...
Review URL: https://breakpad.appspot.com/421002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@995 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-24 00:15:53 +00:00
mark@chromium.org
63c7f7d7d7
Fix a Windows compiler warning with a cast:
...
minidump_generator.cc(423) : warning C4267: '=' : conversion from 'size_t' to
'ULONG', possible loss of data
Patch by Robert Sesek <rsesek@chromium.org >
Review URL: https://breakpad.appspot.com/420002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@994 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-23 21:35:52 +00:00
mark@chromium.org
5d8db68b51
Ignore -Wdeprecated-declarations for bootstrap_create_service in
...
OnDemandServer.mm.
BUG=crbug.com/137676
TEST=compiles
Patch by Robert Sesek <rsesek@chromium.org >
Review URL: https://breakpad.appspot.com/419002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@993 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-23 19:09:25 +00:00
ted.mielczarek
da1568ac03
Move minidump_extension_linux.h contents into minidump_format.h
...
R=mark at https://breakpad.appspot.com/415002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@991 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-20 12:38:31 +00:00
ted.mielczarek
b6b4451142
Add a filter callback to CrashGenerationServer on mac
...
A=Rafael Ávila de Espíndola <respindola@mozilla.com > R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=732173
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@990 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-20 12:24:25 +00:00
ted.mielczarek
2f56276fbf
Allow adding extra memory regions to minidump on linux/windows
...
A=Bill McCloskey <wmccloskey@mozilla.com > R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=662646
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@989 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-19 22:03:39 +00:00
ted.mielczarek
534189b735
Allow the crash generation server to be initialized with a handle instead of a pipe name
...
A=bsmedberg R=ted at http://breakpad.appspot.com/406002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@985 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-16 15:16:01 +00:00
cdn@chromium.org
e05aab7b6b
Add the capability to include an arbitrary data stream within minidumps
...
This is supplied via a custom field "custom-data-stream"
Review URL: https://breakpad.appspot.com/408002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@984 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-10 18:52:07 +00:00
qsr@chromium.org
47e34e6f07
Fix compilation for iOS on XCode 4.5
...
Compilation directive for PPC was using MAC_OS_X_VERSION_MIN_REQUIRED.
This is not correct, as the latest SDKs allow to compile for older version of
Mac OS, but don't contain the ppc headers. Changing the directive to use
MAC_OS_X_VERSION_MAX_ALLOWED instead.
Moreover, uploader.mm was including pwd.h that was not used and doesn't exist
on the latest iOS SDK.
Review URL: https://breakpad.appspot.com/412002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@982 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-09 12:38:15 +00:00
digit@chromium.org
8d96707553
Add MD_OS_ANDROID definition.
...
In order to better distinguish Android and Linux minidumps, introduce
a new MD_OS_ANDROID definition, and modify related source code accordingly.
Also append the build-fingerprint to the minidump location descriptor.
This gives more information about the system image the device runs on.
Review URL: https://breakpad.appspot.com/405002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@981 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-04 11:56:26 +00:00
mark@chromium.org
7db2fb7b93
Do not fail crash dump generation if handle operations tracing is not enabled
...
and yet the fatal exception was STATUS_INVALID_HANDLE.
BUG=131699
Patch by Alex Pakhunov <alexeypa@chromium.org >
Review URL: https://breakpad.appspot.com/409003/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@980 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-03 18:31:08 +00:00
mark@chromium.org
a15a2a6811
Allow the minidump writer to collect handle data so that resulting dump contains
...
information about opened handles (!handle) and handle operations trace
(!htrace).
Depending on the dump type different amount of data is collected. For a full
dump all handles and complete handle trace are included to the dump. In the case
of a minidump the list of handle operations for a single handle value (the last
handle value that caused STATUS_INVALID_HANDLE exception) is recorded. In either
case the handle trace should be explicitly enabled by the client process (or by
a debugger) in order to produce any handle trace data.
BUG=131699
Patch by Alex Pakhunov <alexeypa@chromium.org >
Review URL: https://breakpad.appspot.com/410002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@979 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-03 16:44:49 +00:00
ivan.penkov@gmail.com
5f6e1f0fe7
Fixing various compiler warnings and applying minor tweaks to allow running of
...
the mojority of breakpad unittests in Google.
http://breakpad.appspot.com/399002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@978 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-02 22:55:57 +00:00
mark@chromium.org
eb3bf49197
Change #imports that should have been #includes to #include.
...
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@977 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-02 15:34:15 +00:00
mark@chromium.org
0866e8254d
Remove 1 static initializer.
...
Patch by Nico Weber <thakis@chromium.org >
Review URL: https://breakpad.appspot.com/409002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@976 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-07-02 15:33:37 +00:00
ivan.penkov@gmail.com
6de969a304
This change allows compiling the google-breakpad code using a global ::string class instead of std::string. For more details take a look at common/using_std_string.h
...
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@974 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-06-28 22:46:01 +00:00
digit@chromium.org
93cebf538e
Fix Android build of client library
...
http://breakpad.appspot.com/401002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@973 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-06-27 14:04:52 +00:00
thestig@chromium.org
5f4fd97781
Fix a race condition in AutoCriticalSection.
...
CID=104232
Review URL: https://breakpad.appspot.com/398002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@972 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-06-19 23:42:18 +00:00
mark@chromium.org
c50346b341
CrashGenerationServer's state machine can be invoked from both the application
...
thread and thread pool threads. This CL serializes access to the FSM state.
Handling of crash dump and client shutdown requests is still done
asynchronously.
Patch by Alex Pakhunov <alexeypa@chromium.org >
BUG=132164
TEST=remoting_unittests.BreakpadWinDeathTest.*
Review URL: https://breakpad.appspot.com/396002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@970 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-06-12 21:06:11 +00:00
qsr@chromium.org
fd67ff286e
Fix uploader so that it send the guid to the server.
...
Review URL: https://breakpad.appspot.com/391002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@969 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-06-06 08:02:48 +00:00
thestig@chromium.org
4191cae361
Initialize a CustomClientInfo variable. (Coverity)
...
Review URL: https://breakpad.appspot.com/390003
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@967 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-15 22:33:29 +00:00
mark@chromium.org
df8d4f964f
Increase kMinidumpFileLengthLimit from 800000 to 2MB.
...
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@966 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-15 22:30:15 +00:00
qsr@chromium.org
bbc3789df1
Unprotect the allocator before trying to create a minidump from a signal.
...
It is impossible to write a minidump with memory protected. This means that
before this change, no minidump were created when a signal was caught, instead
the application froze.
Review URL: https://breakpad.appspot.com/389002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@964 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-14 11:34:01 +00:00
mark@chromium.org
05d61dfd83
Bits necessary to send the reports along with the minidumps.
...
Currently the log file and the minidump are uploaded in two consequent requests,
thus they get different report ids and it's hard to associate them to each
other.
This CL makes the crash uploader send the minidump and the log file together in
a single multipart request, so that they have the same report id and are
accessible from the same landing page.
Patch by Alexander Potapenko <glider@chromium.org >
Review URL: https://breakpad.appspot.com/387003/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@963 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-11 14:12:43 +00:00
jessicag.feedback
daf16276b4
Fix warning in r961 - C4800
...
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@962 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-07 21:31:31 +00:00
cdn@chromium.org
fa31053b42
wires up the crash client side so that the deferred upload callback can be used.
...
TEST=N/A
Review URL: https://breakpad.appspot.com/384001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@961 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-05-03 18:15:11 +00:00
ted.mielczarek
e6e778f635
Fix race in VerifyStackReadWithMultipleThreads
...
Patch by Chris Dearman <chris@mips.com >
R=ted at http://breakpad.appspot.com/377002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@959 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-25 11:42:52 +00:00
ted.mielczarek
24c3c97633
Fix compilation warnings related to unchecked return values
...
Patch by Chris Dearman <chris@mips.com >
R=benchan at http://breakpad.appspot.com/377001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@957 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-25 11:22:09 +00:00
ted.mielczarek
258f2459fc
Reap child in VerifyStackReadWithMultipleThreads
...
Patch by Chris Dearman <chris@mips.com >
R=benchan at http://breakpad.appspot.com/378001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@956 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-25 11:21:45 +00:00
benchan@chromium.org
fb7dbb4c28
Fix file descriptor leak in GetThreadInfoByIndex
...
Patch by Chris Dearman <chris@mips.com >
Review URL: http://breakpad.appspot.com/376001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@954 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-18 15:33:54 +00:00
cdn@chromium.org
05f02b46ed
Set limit on the number of custom client info entries that can be sent with a crash dump.
...
BUG=123709
TEST=N/A
Review URL: https://breakpad.appspot.com/377004
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@953 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-17 18:20:22 +00:00
cdn@chromium.org
9a3de4160b
Expose a callback to allow crash server implementations to defer the uploading of crash dumps to a later time. The client can provide a crash_id when the dump is performed and then at a later time connect again and request that the crash id be uploaded triggering an implementation defined callback.
...
BUG=473
TEST=CrashGenerationServerTest.*
Review URL: https://breakpad.appspot.com/379001
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@952 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-13 22:20:30 +00:00
ted.mielczarek
789eac95fd
Fix file descriptor leaks in ExternalDumper test
...
Patch by Chris Dearman <chris@mips.com >
R=ted at http://breakpad.appspot.com/372002/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@951 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-11 20:44:09 +00:00
qsr@chromium.org
a66d4b272a
Fixed "unused method" warning, reported by Xcode 4.2 on simulator.
...
Patch by tball@google.com
Review URL: https://breakpad.appspot.com/371002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@948 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-04 11:06:35 +00:00
mark@chromium.org
4f291f0307
Changes to get the breakpad client compiling and running on Android using
...
ndk-7b.
Patch by Carlos Valdivia <carlosvaldivia@google.com >
Review URL: https://breakpad.appspot.com/363001/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@945 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-03 16:38:53 +00:00
ted.mielczarek@gmail.com
ae38954f50
Remove redundant include of CPP specific header files
...
Patch by Chris Dearman <chris@mips.com >
R=ted at http://breakpad.appspot.com/372001/
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@944 4c0a9323-5329-0410-9bdc-e9ce6186880e
2012-04-03 12:54:37 +00:00