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
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
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
This patch adds an option to android/run-checks.sh to specify
the target ABI. For example, by using the following line:
android/run-checks.sh --abi=x86 --no-device
One can check the Android/x86 build of Google Breakpad (which
still fails for reasons that will be fixed in later patches).
Another use is to force the 'armeabi' ABI even when an
ARMv7-A device is connected (which uses the 'armeabi-v7a'
by default, but supports 'armeabi' as well).
Review URL: https://breakpad.appspot.com/424002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1003 4c0a9323-5329-0410-9bdc-e9ce6186880e
This patch removes a few libc calls from the client library
when generating a minidump.
+ Move the static inlined functions from linux_libc_support.h
into their own source file to avoid code duplication.
Tested on linux-x86_64 with 'make check' and 'android/run-checks.sh'
Review URL: https://breakpad.appspot.com/411002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1001 4c0a9323-5329-0410-9bdc-e9ce6186880e
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
This patch adds a new directory named "android/" which contains
the following:
- A NDK build system module definition for the Google Breakpad
client library. This can be used by developers using the ndk-build
build system to more easily build and use the client library in
their own programs.
- A sample application demonstrating how to use the module,
as well as test that the library works properly during a
crash.
- A shell script (run-checks.sh) that will check everything
for you automatically, including:
- Rebuilding the host Google Breakpad host package with configure/make
- Rebuilding the Android client library with configure/make
- Rebuilding the Android client library and test program with ndk-build
- Running the crashing test program, extract minidump, dump symbols,
generate a stack trace and check that it has correct source file
locations.
For more details, run android/run-checks.sh --help-all
+ Updates to the README.ANDROID documentation.
Review URL: https://breakpad.appspot.com/407002
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@983 4c0a9323-5329-0410-9bdc-e9ce6186880e
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
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
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
do with FPO (frame-pointer-omission) optimized context
frames where the context frame represents a Windows
System call stub.
git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@971 4c0a9323-5329-0410-9bdc-e9ce6186880e
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