Fallback to using file offsets if no symbol is found, like we do if the
object could not be opened.
This makes backtraces usable even if objects in the trace are stripped,
since the trace can be symbolized by post-processing it with a tool like
asan_symbolize.py.
Note that this is not currently compatible with SymbolizeCallback as
this overwrites the filename in the buffer. The behavior is unchanged
in that case.
Closes: #514
* Upstream Chromium local changes to symbolize.cc
Chromium has its own fork of symbolize.cc and symbolize.h, and it has
several not-yet-upstreamed changes, that are not specific to Chromium.
This patch upstreams such a changes.
Fixed google::FindSymbol reading past end of a section
3dae0a2d7d
Fix -INT_MIN integer overflow in itoa_r().
ac4d28e9cb
Add print_unsymbolized_stack_traces gn arg.
6a2726776f
Switch to standard integer types in base/.
9b6f42934e
* Add a build option to print unsymbolized traces
This PRINT_UNSYMBOLIZED_STACK_TRACES option to cmake, and
--enable-unsymbolized-traces option to autoconf.
Under some circumstances like cross-compilation, the user might not want
to enable support for gflags.
This patch allows support for --without-gflags
Signed-off-by: Ricardo Ribalda Delgado <ricardo.ribalda@gmail.com>
- Set -Isrc/windows for mingw
- Check existence of sigaction, pread, and pwrite
- Provide alternative implementation of pread and pwrite
- Eliminate symlink code for OS_WINDOWS
- Don't check /proc/self/fd if the OS isn't linux
- Don't use MSVC specific declarations in port.h for mingw
git-svn-id: https://google-glog.googlecode.com/svn/trunk@135 eb4d4688-79bd-11dd-afb4-1d65580434c0
Remove autogen.sh, since you can just use autoreconf instead.
Ran autoreconf and fixed a couple of issues that popped up in
configure.ac and m4/ac_rwlock.m4. This updates the configuration
files to automake/aclocal 1.11.1 (from 1.10.1) and to autoconf 2.65
(from 2.61).
git-svn-id: https://google-glog.googlecode.com/svn/trunk@93 eb4d4688-79bd-11dd-afb4-1d65580434c0
This line, and those below, will be ignored--
M configure
M ChangeLog
M configure.ac
M packages/deb/changelog
git-svn-id: https://google-glog.googlecode.com/svn/trunk@89 eb4d4688-79bd-11dd-afb4-1d65580434c0
- configure.ac: Add -lpthread only if acx_pthread_ok is yes. In cygwin, we use Windows' thread so that we don't need -lpthread.
- base/mutex.h: Define NOMINMAX before we include windows.h.
- glog/*.h: Make sure that dllimport doesn't appear in cygwin. Note that windows.h may define _WIN32 macro.
- utilities.h: Define OS_CYGWIN.
git-svn-id: https://google-glog.googlecode.com/svn/trunk@30 eb4d4688-79bd-11dd-afb4-1d65580434c0
Since we introduced the API to set signal handler and print a
stacktrace, we should avoid glibc's backtrace, which may call malloc.
Basically, we choose the way to produce a stacktrace as same as
perftools.
Also, I removed GetStackFrames, which is not used and not implemented
with glibc.
git-svn-id: https://google-glog.googlecode.com/svn/trunk@16 eb4d4688-79bd-11dd-afb4-1d65580434c0
will dump useful information when the program crashes on certain signals such
as SIGSEGV.
Also, changed the version of autoconf (2.59 => 2.61).
git-svn-id: https://google-glog.googlecode.com/svn/trunk@11 eb4d4688-79bd-11dd-afb4-1d65580434c0
has execinfo.h (e.g., MacOSX 10.5). Though dladdr may not be async
signal safe, it's OK since glog's stacktrace doesn't depend on signals.
git-svn-id: https://google-glog.googlecode.com/svn/trunk@7 eb4d4688-79bd-11dd-afb4-1d65580434c0