diff options
author | Michael Forney <mforney@mforney.org> | 2020-03-10 16:30:20 -0700 |
---|---|---|
committer | Mike Frysinger <vapier@chromium.org> | 2020-03-10 23:49:55 +0000 |
commit | 75ca6a193d34f05fee66290028321a97e0a74910 (patch) | |
tree | 162cf0875aab30c0d79cecc6dca6cb9ac3faa0fd /src/client/linux/dump_writer_common/ucontext_reader.h | |
parent | Use ULONG_MAX instead of __WORDSIZE to determine ELF class (diff) | |
download | breakpad-75ca6a193d34f05fee66290028321a97e0a74910.tar.xz |
Use public fpregset_t type to define fpstate_t
The _libc_fpstate struct tag is an implementation detail of glibc,
and musl uses a different struct tag, _fpstate.
Unfortunately, the public type fpregset_t is a pointer type, so is
not suitable for allocating storage, or referring to constant
storage. Instead, we can use std::remove_pointer<fpregset_t>::type
to refer to the pointed-to type, regardless of the struct tag.
Bug: google-breakpad:631
Change-Id: Iaf47f15b2d834dd8de839431f65a481e9b0c7f9e
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/2096171
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Diffstat (limited to 'src/client/linux/dump_writer_common/ucontext_reader.h')
-rw-r--r-- | src/client/linux/dump_writer_common/ucontext_reader.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/client/linux/dump_writer_common/ucontext_reader.h b/src/client/linux/dump_writer_common/ucontext_reader.h index f830618f..8e74a8a5 100644 --- a/src/client/linux/dump_writer_common/ucontext_reader.h +++ b/src/client/linux/dump_writer_common/ucontext_reader.h @@ -34,6 +34,7 @@ #include <sys/user.h> #include "client/linux/dump_writer_common/raw_context_cpu.h" +#include "client/linux/minidump_writer/minidump_writer.h" #include "common/memory_allocator.h" #include "google_breakpad/common/minidump_format.h" @@ -50,7 +51,7 @@ struct UContextReader { // info: the collection of register structures. #if defined(__i386__) || defined(__x86_64) static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, - const struct _libc_fpstate* fp); + const fpstate_t* fp); #elif defined(__aarch64__) static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc, const struct fpsimd_context* fpregs); |