forked from google/breakpad
-
Notifications
You must be signed in to change notification settings - Fork 13
chore: upstream update 2025-06-13 #41
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
When building a stack trace using StackwalkerAddressList, if there are inlined frames then the stack trace will skip over the following frames, leading to missing frames in the symbolized stacktraces. Bug: 314930064 Change-Id: I5c7a1b2e7c2f728e27b2082e77ebe953808f38bc Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5087692 Reviewed-by: Joshua Peraza <[email protected]>
In RangeMap::StoreRangeInternal, when size <= 0 and !high_ok then the high variable is passed to HexString uninitialized. Change-Id: I7e597cadaf248b607c646534a5d800c17ccdeda9 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5155712 Reviewed-by: Robert Sesek <[email protected]>
Throws an error when compiling on Windows. Change-Id: Ieb34c00cf199aaa1b45a440086c48b8ed363b3c7 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5137658 Reviewed-by: Ivan Penkov <[email protected]>
Minidump file needs to be opened as binary. Change-Id: I15f148ec905c9491050b77a77e86e2749da93515 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5160989 Reviewed-by: Sterling Augustine <[email protected]>
Windows doesn't have posix regex support. This will disable these tests so long as Google's ABSL library is not also found. Change-Id: Ie6f96d5ea74b80b6128c2f1ec3ed54fcfaa17f47 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5160533 Reviewed-by: Ivan Penkov <[email protected]>
Change-Id: Ibcf1b0ddb93f1cf6bf12681ed82871328571f2aa Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5137659 Reviewed-by: Ivan Penkov <[email protected]>
Otherwise, even with core.autocrlf=false, Windows will checkout these minidump output files with CRLF line-ending. It is necessary for these files to be checked out using LF line-ending for the unit tests to pass. Change-Id: I7cacf4b5fa56e007c8aa81202e0cef7ad42ae93a Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5160534 Reviewed-by: Ivan Penkov <[email protected]>
Minidumps can contain extended contexts with xstate data for amd64 and x86. Support for amd64 contexts was added in fe35cd4. With this change, breakpad can now read x86 minidumps that contain extended xstate data. Similar to the previously mentioned commit, this change does not yet add processing for this extra data, but will allow the minidumps to be read. Change-Id: Ie96e91168def774092e05908535a70fc5e2427e9 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5154022 Reviewed-by: Mike Frysinger <[email protected]>
Change-Id: Id22814308542503754600c2fa41e76bd6d1492c0 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5143028 Reviewed-by: Ivan Penkov <[email protected]>
Availability.h and AvailabilityMacros.h are only available when compiling on Apple. Change-Id: I820c74a7fa15560c358366418a503b911dde3d86 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5171145 Reviewed-by: Ivan Penkov <[email protected]>
Bug: b/317143556 Change-Id: Iba82712fedf7d126c2392cfc0f157ded2bca5219 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5171059 Reviewed-by: Ivan Penkov <[email protected]>
This change introduces two new flags: `--ipsw` and `--installer` which are mutually exclusive with `--system-root` and each other. Each takes a file path as an argument, which is expected to be an IPSW for `--ipsw` and an Apple installer for `--installer`. Calling `upload_system_symbols` with these arguments will cause it to find any dyld shared caches present inside the given IPSW or installer, extract them via `dsc_extractor` in `--breakpad-tools`, then behave as if it had been called with the resulting libraries as `--system-root`. Bug: chromium:1400770 Change-Id: I7f98e0c6ab069a2e960f12773d800d8a5a37221f Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5089008 Reviewed-by: Robert Sesek <[email protected]>
…used by an integer overflow. We started getting Breakpad symbol files that exceed some of the 32-bit limits. Change-Id: I1f81905c0b7f88a0c93f10b651e5e160876487fd Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5186360 Reviewed-by: Joshua Peraza <[email protected]>
The version of Makefile.in that landed in https://crrev.com/c/4722191 had a Makefile.in that was generated from a previous version of Makefile.am where the libzstd dependency wasn't optional. That's causing some problems (see: https://crrev.com/c/5193965) and is a simple mistake. I generated this CL by simply running `automake`, so it simply makes the checked in generated Makefile.in based on the checked in source Makefile.am Change-Id: Iabb4a99bfac3f5ef6067a140bd373c9fb894878a Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5200626 Reviewed-by: Mike Frysinger <[email protected]>
Change-Id: I862905a164370298ca2f21d2030a0aab860cc08c Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5204606 Reviewed-by: Nelson Billing <[email protected]>
This uninitialized-memory use breaks the Mac ubsan build as dump_syms runs during the build step. Bug: chromium:1324701 Change-Id: Id4e0a7d38893b2ceb49e58d1f5c99a056d84a921 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5243705 Reviewed-by: Lei Zhang <[email protected]>
For ARM32 binaries running on ARM64 Linux (kernel) reading of FP registers fails. It's guarded for Android as well as softap platforms, but other ARM platforms can suffer from this issue. The ARMEABI linux_ptrace_dumper_unittest fails on system that runs under ARM64 kernel. In order to mitigate the issue, we adding a VFP registers read. The Breakpad does not support include of VFP registers into a minidump file, so that read is noop for the backend, but just a fix for broken systems. Bug: internal 322205293 Test: Run linux_ptrace_dumper_unittest on following [userland:kernel] combinations: armeabi-hardfp:armeabi armeabi-softfp:armeabi armeabi-hardfp:aarch64 aarch64:aarch64 Signed-off-by: Volodymyr Riazantsev <[email protected]> Change-Id: I0709ae9a7ff913340ebc89de703ab2cb9c823b14 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5247149 Reviewed-by: Joshua Peraza <[email protected]>
Fix a type definition, so it doesn't collide if the similar type is already defined in the sysroot headers. Test: Build for Android/Linux. Bug: Internal 322205293 Change-Id: I3453de725083b01f2e69a61a7fc948f9f8ca5eca Signed-off-by: Volodymyr Riazantsev <[email protected]> Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5251488 Reviewed-by: Joshua Peraza <[email protected]>
Updated code to use Google's modern C++ style. * Use std::unique_ptr to allocate DwarfCUToModule::WarningReporter. * Fixed reference alignment in NullWarningReporter. Change-Id: I230dac445a07b4023a64284b907010f31eadcdf4 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5265662 Reviewed-by: Lei Zhang <[email protected]> Reviewed-by: Ivan Penkov <[email protected]>
- Mark `RawImagePatch` weak - Fix reversed condition in disk image unmounting - Ensure source files are closed when copying - Use 0-based indexing when determining installer OS version Bug: None Change-Id: I015f2b0d9c88a5ec128822d55c974e22723a1a6e Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5291963 Reviewed-by: Mark Mentovai <[email protected]>
Recently, Breakpad symbol files have exceeded the various 32-bit limits in these utils and we started seeing integer overflows. This is also fixing a build issue in src/common/mac/dump_syms.cc. Change-Id: Ibd913816c3b2b1171ac9991718c8911ac31eda86 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5299472 Reviewed-by: Ivan Penkov <[email protected]> Reviewed-by: Joshua Peraza <[email protected]>
Bug: None Change-Id: I7f3709ee7e8b7e9e938850b1bbe24925e3e03c9b Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5300127 Reviewed-by: Mark Mentovai <[email protected]>
Split out from https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5300127/1..4/src/processor/range_map_unittest.cc#b507 Bug: None Change-Id: Iedc8508b6c123a54fdd1de2e2719dcd70adb03a6 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5300128 Reviewed-by: Ivan Penkov <[email protected]>
…er_arm64.cc Also, defining __STDC_FORMAT_MACROS before including <inttypes.h> Change-Id: Ia25c4353412ca70512efef5e98670687ab575750 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5310977 Reviewed-by: Joshua Peraza <[email protected]>
After reading minidump context with x86 xstate data, we seek past it, so there needs to be a check to see that the seek operation did not fail. Change-Id: I8ed4394e452c435234116d97fd65856345cb618a Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5324600 Reviewed-by: Mike Frysinger <[email protected]>
Change CompilationUnit::SkipAttribute() and CompilationUnit::ProcessOffsetBaseAttribute() to print the unknown form types they encounter. Along the way, fix various formatting issues, stray trailing spaces, and update some NULLs to nullptrs. Change-Id: I5b3e72c9c6c9cb31e8a930e54418adb74b02f6c2 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5366242 Reviewed-by: Joshua Peraza <[email protected]>
It is undefined behavior to access mis-aligned pointers. Change-Id: I06f676c6a4b92a4bb58db76b8f23750d18148940 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5380937 Reviewed-by: Ivan Penkov <[email protected]>
Change-Id: Ie62795137770cff7cda7494c5527457b1e355897 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5402921 Reviewed-by: Ivan Penkov <[email protected]>
Summary: Android prefers `.note.gnu-build-id`[0] as BuildId than anyother PT_NOTE phdrs. This CL tries to read ElfBuildId from `.note.gnu.build-id` first to fix the BuildId mismatch issue between Android tombstone report and breakpad symbol file. e.g ``` Section Headers: [Nr] Name Type Address Offset Size EntSize Flags Link Info Align [ 0] NULL 0000000000000000 00000000 0000000000000000 0000000000000000 0 0 0 [ 1] .note.androi[...] NOTE 0000000000000270 00000270 0000000000000018 0000000000000000 A 0 0 4 [ 2] .note.hwasan[...] NOTE 0000000000000288 00000288 000000000000001c 0000000000000000 A 0 0 4 [ 3] .note.gnu.bu[...] NOTE 00000000000002a4 000002a4 0000000000000020 0000000000000000 A 0 0 4 $ readelf -x .note.hwasan.globals Hex dump of section '.note.hwasan.globals': 0x00000288 08000000 08000000 03000000 4c4c564d ............LLVM 0x00000298 00000000 98890100 409d0100 ........@... $ readelf -x .note.gnu.build-id Hex dump of section '.note.gnu.build-id': 0x000002a4 04000000 10000000 03000000 474e5500 ............GNU. 0x000002b4 a4eb3625 c1db6452 1e881973 bfdff9bd ..6%..dR...s.... ``` The BuildId in tombstone: ``` libartbase.so (BuildId: c7e463b51b0898d442269a421353bdbd) ``` But the breakpad dump_syms got: ``` MODULE Linux arm64 000189989D40000100000000000000000 libartbase.so INFO CODE_ID 98890100409D0100 ````` [0] https://cs.android.com/android/platform/superproject/main/+/main:system/unwinding/libunwindstack/ElfInterface.cpp;l=423-427;drc=3d19fbcc09b1b44928639b06cd0b88f735cd988d Change-Id: I01e3514e0e2a1ea163c03093055284448ed4e89c Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5463566 Reviewed-by: Joshua Peraza <[email protected]>
Change-Id: Ib785633b229d3f17534da9b0de93255e80fddd70 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/5484086 Reviewed-by: Joshua Peraza <[email protected]>
Compiling with GCC 14.2 and C++20 triggers an error: $ g++ -std=gnu++20 -DHAVE_CONFIG_H -I. -I../src -I./src -I../src/src \ -Wmissing-braces -Wnon-virtual-dtor -Woverloaded-virtual -Wreorder -Wsign-compare -Wunused-local-typedefs -Wunused-variable -Wvla -Werror \ -fPIC -O2 -g -c ../src/src/processor/minidump.cc In file included from /usr/include/c++/14/memory:78, from ../src/src/processor/minidump.cc:63: In member function ‘void std::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = std::__cxx11::basic_string<char>]’, inlined from ‘void std::default_delete<_Tp>::operator()(_Tp*) const [with _Tp = std::__cxx11::basic_string<char>]’ at /usr/include/c++/14/bits/unique_ptr.h:87:7, inlined from ‘std::unique_ptr<_Tp, _Dp>::~unique_ptr() [with _Tp = std::__cxx11::basic_string<char>; _Dp = std::default_delete<std::__cxx11::basic_string<char> >]’ at /usr/include/c++/14/bits/unique_ptr.h:398:17, inlined from ‘virtual std::string google_breakpad::MinidumpModule::debug_file() const’ at ../src/src/processor/minidump.cc:2576:9: /usr/include/c++/14/bits/unique_ptr.h:93:9: error: ‘void operator delete(void*, std::size_t)’ called on unallocated object ‘file’ [-Werror=free-nonheap-object] 93 | delete __ptr; | ^~~~~~~~~~~~ ../src/src/processor/minidump.cc: In member function ‘virtual std::string google_breakpad::MinidumpModule::debug_file() const’: ../src/src/processor/minidump.cc:2509:10: note: declared here 2509 | string file; | ^~~~ Workaround this by forcing a new string to be constructed from the memory, and then moved into the stack file object. Change-Id: I1e2e6c2e30723daefca2046a3e5f5a580975301b Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6346970 Reviewed-by: Lei Zhang <[email protected]>
We've required C++17 for a while now, and that offers unique_ptr which is functionally the same as our scoped_ptr. Replace our custom code with an alias to the standard API. If this sticks, we can update the entire tree to use unique_ptr directly. Change-Id: I3ce01f710dc5c62d05df36d4c28059dddd3f71a9 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6346969 Reviewed-by: Lei Zhang <[email protected]>
Change-Id: Ib07dcda1ca94fc2eda225a76d6fcb52c9ebd1700 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6297837 Reviewed-by: Troy Wang <[email protected]>
Chromium switched to C++20 2 years ago, and we want to start using features from it, so update to it too. Change-Id: I97067f5015be6369506de5389913c60f336130a0 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6347230 Reviewed-by: Mark Mentovai <[email protected]>
Passes `make check` on Linux for me, and it's close to the version the Chromium tree has been using for a while now. Certainly much closer than the 1.11.0 version we're pinned to. Change-Id: I494cbf540cf4bd525d4e35c28da2c22d59efec1b Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6367938 Reviewed-by: Lei Zhang <[email protected]>
This reverts commit f8d05a9. This reverts commit a70e77e. This breaks src/processor/minidump_stackwalk_test on Linux: $ make check VERBOSE=1 ... ../src/src/processor/testdata/minidump2.stackwalk.out @@ -8,6 +8,9 @@ Crash reason: EXCEPTION_ACCESS_VIOLATION_WRITE Crash address: 0x45 +Crash parameters: + value: 1 description: + value: 69 description: Process uptime: 0 seconds Thread 0 (crashed) ... Change-Id: Iae755826913c5cbc97f3493bbe288d17aa0205d2 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6371501 Reviewed-by: Lei Zhang <[email protected]>
Delete the scoped_ptr alias and switch code to std::unique_ptr directly. Change-Id: I3a25e07d66f0a27d16f82443b01c4db93a2cf0d9 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6367939 Reviewed-by: Lei Zhang <[email protected]>
Someday the bot will send us LSS updates automatically. Change-Id: I99640b2d466e555b9a0623c28a437a3ddab502d4 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6381405 Reviewed-by: Lei Zhang <[email protected]>
Change NULL to nullptr across the codebase. Drop stddef.h in a few places where it is no longer needed. Change-Id: I9ca16bc243e0c7b8900b175b0426ee6c9a55ecef Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6381404 Reviewed-by: Lei Zhang <[email protected]>
Some refactors cleaned up headers in places they weren't used, but other files were relying on those indirect includes. Add assert.h to the various C++ files that use assert(). Change-Id: I7be2b1108548bb1fb126548cb3b891a76024f83b Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6387418 Reviewed-by: Lei Zhang <[email protected]>
Change-Id: I8f08b7ea098d6e7814d84677487d7f96ead5cdcc Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6388176 Reviewed-by: Lei Zhang <[email protected]>
We require C++20 now, so we can switch to the C++17 [[fallthrough]]. Change-Id: I5c34cd4154bca28f4d950524e5b2ffb1e7ec8afd Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6388177 Reviewed-by: Lei Zhang <[email protected]>
Some Windows code was misusing NULL, so when it was changed to nullptr, the extra compile-time checks caught it and broke. Since crash_id_ is an integer, initialize it to 0, not a pointer. client/windows/crash_generation/client_info.cc(60,7): error: cannot initialize a member subobject of type 'DWORD' (aka 'unsigned long') with an rvalue of type 'std::nullptr_t' 60 | crash_id_(nullptr) { Casting a pointer to the MINIDUMP_TYPE enum doesn't make sense, especially when the enum with value 0 is a valid value. Switch to MiniDumpNormal since that's what NULL (0) was doing. client/windows/crash_generation/crash_generation_client.cc(209,23): error: static_cast from 'std::nullptr_t' to 'MINIDUMP_TYPE' (aka '_MINIDUMP_TYPE') is not allowed 209 | static_cast<MINIDUMP_TYPE>(nullptr), nullptr, nullptr, While these are ULONG_PTR, MSDN says they're status codes & byte counts, so initialize both to 0 rather than a null pointer. client/windows/crash_generation/crash_generation_server.cc(568,26): error: assigning to 'ULONG_PTR' (aka 'unsigned long long') from incompatible type 'std::nullptr_t' 568 | overlapped_.Internal = nullptr; client/windows/crash_generation/crash_generation_server.cc(569,30): error: assigning to 'ULONG_PTR' (aka 'unsigned long long') from incompatible type 'std::nullptr_t' 569 | overlapped_.InternalHigh = nullptr; Since handle_ is an integer, initialize it to 0. client/windows/crash_generation/minidump_generator.cc(109,7): error: cannot initialize a member subobject of type 'ULONG64' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t' 109 | handle_(nullptr) { While Linux defines AppMemory.ptr as void*, Windows defines it as ULONG64. Cast nullptr to that to match other ptr code in this file. client/windows/handler/exception_handler.cc(256,28): error: assigning to 'ULONG64' (aka 'unsigned long long') from incompatible type 'std::nullptr_t' 256 | instruction_memory.ptr = nullptr; The last arg to WinHttpConnect is a reserved integer, not a pointer, so passing it NULL was incorrect -- change to 0 per MSDN. tools/windows/converter_exe/winhttp_client.cc(150,42): error: cannot initialize a parameter of type 'DWORD' (aka 'unsigned long') with an rvalue of type 'std::nullptr_t' 150 | nullptr)); We need to pass explicit 0 for DWORD_PTR types. tools/windows/converter_exe/wininet_client.cc(175,39): error: cannot initialize a parameter of type 'DWORD_PTR' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t' 175 | nullptr)); Change-Id: Id5f5b65a4279fe7aa1cbc1b99b18813d6a150117 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6388180 Reviewed-by: Lei Zhang <[email protected]>
Further work for Windows and NULL->nullptr. Pass explicit 0 for DWORD_PTR types. tools/windows/converter_exe/winhttp_client.cc(188,33): error: cannot initialize a parameter of type 'DWORD_PTR' (aka 'unsigned long long') with an rvalue of type 'std::nullptr_t' 188 | nullptr); Change-Id: I5c62094dfe05b6edcee293284ee02840cccab517 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6387423 Reviewed-by: Lei Zhang <[email protected]>
Bug: chromium:407791454 Change-Id: Ib07a9ef0e5559fa076d7f78c4e5313c9b62b5575 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6420191 Reviewed-by: Mark Mentovai <[email protected]>
Missed a PlistBuddy use last time; also fixed a logic bug when compiling system roots. Bug: chromium:407791454 Change-Id: I1c283d4e7ba4c527570b845bf96b8b88f96cf6cb Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6443735 Reviewed-by: Mark Mentovai <[email protected]>
Bug: 407791454 Change-Id: I614d31a0d889f99d4c66ebd8240aeaeb3c929def Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6508090 Reviewed-by: Mark Mentovai <[email protected]>
… when dumping This helps enable uploading all symbols for an architecture together for resumability, and lets us record what has been uploaded at better granularity. Bug: 407791454 Change-Id: I3720409405af6a92ba161269da4926cf5fc82d0c Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6532576 Reviewed-by: Mark Mentovai <[email protected]>
`-Wnontrivial-memcall` warning is raised: passing non-trivially-copyable destination parameter to `memset`. It's safe to suppress the warning with `static_cast<void*>(&msg_)` because `ProtocolMessage msg_` is POD with disabled copy ctor and `operator=`. Change-Id: Iec53a946e1fc5570bf77f792222a4958b20900f0 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6508032 Reviewed-by: Lei Zhang <[email protected]> Reviewed-by: Mike Frysinger <[email protected]>
Replaced all alignments like `size + (alignment - 1) & (~alignment + 1)` and `size + (alignment - 1) & -alignment` with the function call, except one in common/windows/pe_util.cc, that can't include common/memory_allocator.h. Fixed a bug in computing aligned file name size in `AugmentMappings()` in tools/linux/md2core/minidump-2-core.cc: it was `(filename.size() + 8) & ~7`, shall be `(filename.size() + 7) & ~7`. Change-Id: Id3dbdc71193c1215de67e59915e0067c2637e076 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6333238 Reviewed-by: Lei Zhang <[email protected]> Reviewed-by: Mike Frysinger <[email protected]>
This is to fix build error when we set use_libcxx_modules=true in chromium build for ChromeOS. Bug: 40263312 Change-Id: I9ec8cf3d0de3b1099100a8d524c939d58586ad34 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6629550 Reviewed-by: Lei Zhang <[email protected]>
With C++ modules enabled (`-fmodules`), including a system header like <stdint.h> from within a namespace is not permitted. This was causing a build failure in the `:stackwalk_common` target: fatal error: import of module '_Builtin_stdint' appears within namespace 'libdis' The code in `disassembler_x86.h` was wrapping the `libdisasm` third-party library, including its headers, inside a `libdis` namespace. This change removes the `libdis` namespace wrapper, resolving the build failure. This allows C++ modules to be re-enabled for the breakpad target, contributing to the broader effort to use modules for system headers. Bug: 424364315 Change-Id: I9e5bfe29f63b6e1659c7912a15a3eaa376b865d2 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/6636461 Reviewed-by: Primiano Tucci <[email protected]>
…akpad into chore/update_2025_06_13
80cd6f5
to
62abdcf
Compare
supervacuus
approved these changes
Jun 16, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
👍 but only merge after the parent tests were successful.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.