lp:~itachi-san/telegram-desktop/breakpad

Created by Giovanni Santini on 2016-05-04 and last modified on 2019-08-14
Get this branch:
bzr branch lp:~itachi-san/telegram-desktop/breakpad

Branch merges

Related bugs

Related blueprints

Branch information

Owner:
Giovanni Santini
Project:
Telegram Desktop
Status:
Development

Import details

Import Status: Reviewed

This branch is an import of the HEAD branch of the Git repository at https://chromium.googlesource.com/breakpad/breakpad.

The next import is scheduled to run in 4 hours.

Last successful import was 1 hour ago.

Import started 1 hour ago on alnitak and finished 1 hour ago taking 20 seconds — see the log
Import started 8 hours ago on alnitak and finished 8 hours ago taking 20 seconds — see the log
Import started 14 hours ago on alnitak and finished 14 hours ago taking 20 seconds — see the log
Import started 20 hours ago on alnitak and finished 20 hours ago taking 20 seconds — see the log
Import started on 2019-08-23 on alnitak and finished on 2019-08-23 taking 20 seconds — see the log
Import started on 2019-08-23 on alnitak and finished on 2019-08-23 taking 20 seconds — see the log
Import started on 2019-08-23 on alnitak and finished on 2019-08-23 taking 20 seconds — see the log
Import started on 2019-08-23 on alnitak and finished on 2019-08-23 taking 20 seconds — see the log
Import started on 2019-08-22 on alnitak and finished on 2019-08-22 taking 20 seconds — see the log
Import started on 2019-08-22 on alnitak and finished on 2019-08-22 taking 20 seconds — see the log

Recent revisions

1796. By Mike Frysinger <email address hidden> on 2019-08-14

codereview.settings: do not force squashing behavior

Leave it to the user to decide how to manage their local tree state.

Bug: 993518
Change-Id: Ic026f9bdc11e1a16f91da74f1b173753c6efa88c
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1753593
Reviewed-by: Mark Mentovai <email address hidden>

1795. By Mark Mentovai <email address hidden> on 2019-08-12

Remove use of "register" keyword, deprecated in C++17

"register" as a storage class specifier has been deprecated since C++11,
and has been removed from C++17 while remaining a reserved word. See
C++17 5.11 and C.4.3.

Change-Id: I2dbab8a7061cb680d902644d39ea1a7fbc930e5c
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1749329
Reviewed-by: Mike Frysinger <email address hidden>

1794. By Mark Mentovai <email address hidden> on 2019-08-07

Mac dump_syms: accept __DWARF segment without __debug_info section

A .dSYM may validly contain a __DWARF segment without any __debug_info
section. This can occur for Chromium Framework in a component build of
Chromium, because in that case, all of the code is in other libraries
that Chromium Framework depends on.

This was previously tested by an assertion, but the assertion did not
trigger in NDEBUG (release) builds. In NDEBUG builds, this condition
would lead to an out-of-bounds read, detected by AddressSanitizer.

Instead of an assertion, the check is now always done at runtime.
Instead of being fatal, it's now just a warning, because it's been
established that __DWARF without __debug_info can occur.

(In the Chromium case, it remains pointless to run dump_syms via the
"chrome_dump_syms" target on a component build, as it'll only attempt to
symbolize Chromium Framework, and not any of the libraries that Chromium
Framework depends on that actually contain the code.)

Bug: chromium:991206
Change-Id: I6c9c75f0be7901813e3eaae54aff38c1afe73ca9
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1741610
Reviewed-by: Robert Sesek <email address hidden>

1793. By Mike Frysinger <email address hidden> on 2019-08-05

string_conversion: fix pointer math

Since target_ptr is of type uint16_t* already, we don't need to scale
the byte count as the language does that for us. If it were void*, we
would need this code, but it's not.

In practice it's probably not a big deal due to how we preallocated
memory: when converting UTF8->UTF16, we'd reserve the same number of
code units, and UTF8 takes more code units per codepoint than UTF16,
so the UTF16 vector is always oversized.

When converting UTF32->UTF16, we also reserve the same number of
code units, but since one UTF32 code unit could require two UTF16
code units (for U+10000 codepoints and higher), we would probably
corrupt memory in the process. The APIs in this module don't seem
to take into account that range in general, so for now I'm only
fixing the memory corruption.

Bug: google-breakpad:768
Change-Id: Ibfaea4e866733ff8d99b505e72c500bd40d11a74
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1732888
Reviewed-by: Mark Mentovai <email address hidden>

1792. By Mike Frysinger <email address hidden> on 2019-08-04

guid_creater: include string.h for memcpy

Bug: google-breakpad:779
Change-Id: If0cfb036ee924178033c89d4dc3e2ce75ddd46f2
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1732887
Reviewed-by: Mark Mentovai <email address hidden>

1791. By Mike Frysinger <email address hidden> on 2019-08-04

minidump_processor: fix typo in BUS_ADRALN

Bug: google-breakpad:787
Change-Id: I9f7144b3456abb750142eae9f989133bf4f27885
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1734586
Reviewed-by: Mark Mentovai <email address hidden>

1790. By Henri Hyyryläinen <email address hidden> on 2019-08-03

Updated lss to fix compiling with GCC 9

Bug: https://bugs.chromium.org/p/google-breakpad/issues/detail?id=795
Change-Id: I1494c1d2493616b6b263111137ef7aceeb31be44
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1733536
Reviewed-by: Mike Frysinger <email address hidden>

1789. By Joshua Peraza <email address hidden> on 2019-07-23

arm64: strip PACs from link register values

Pointer authentication codes are used to validate pointers against
accidental or malicious modification by storing a hash of the address
and a secret value in the pointer's unused, upper bits. The exact
bits used may vary by implementation and depend on the size of the
virtual address space of the target system, and whether other tagged
pointer features are in use.

Apple has implemented PACs in the Apple A12.
https://developer.apple.com/documentation/security/preparing_your_app_to_work_with_pointer_authentication

The documented method of stripping PACs from a pointer is to call
ptrauth_strip(), which ultimately emits an `xpaci` instruction, but
this option isn't available to the Breakpad processor not running on
the device. Instead, this patch selects likely address bits from
link register values by examining the address range of loaded modules.

Change-Id: I054bd1a03605719937fc85dcc8d8b9fe927f44be
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1713650
Reviewed-by: Mark Mentovai <email address hidden>

1788. By Ivan Penkov <email address hidden> on 2019-07-12

Improving the support for Fuchsia in Breakpad Processor.

Now decoding the OS name and exception codes for Fuchsia. Still not decoding exception flags (can be added later, if needed).

Change-Id: If66cb000828be18f0c1b35d1b1f52b3ca3e1fd67
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1699049
Reviewed-by: Mark Mentovai <email address hidden>

1787. By Mark Mentovai <email address hidden> on 2019-07-12

Remove base_logging::LogMessage

This is deprecated in the downstream consumer that it was introduced to
support.

This undoes b41ad66e93562.

Change-Id: I3e0fa068b134014700128d1d75cae6a20d591d12
Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1687125
Reviewed-by: Ivan Penkov <email address hidden>

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers

No subscribers.