summaryrefslogtreecommitdiff
path: root/libunwindstack/include/unwindstack/AndroidUnwinder.h
AgeCommit message (Collapse)Author
2022-04-20Use #pragma once header guard.Christopher Ferris
Move to using the #pragma once header guard instead of the #ifndef construct since it's cleaner. Test: Compiles. Change-Id: I0bd76b53cfc78df7465029ef34783f85651a9c74
2022-04-20Add the AndroidUnwinder objects.Christopher Ferris
Create two different objects (AndroidLocalUnwinder and AndroidRemoteUnwinder) that encapsulate all Android related knowledge. This makes it simple for other code to create one of these objects and not need to add all of the Android specific code themselves. Add new unit tests to cover these new objects. New unit tests uncovered a small bug in the Unwinder object, namely that if you are skipping libraries, the suffixes to ignore still looks at the ignored frames. Fixed to only apply ignore suffixes to only non-ignored frames. Rewrote all of the places that attach to remote processes and created a single function to handle all of the different cases. Bug: 120606663 Test: All unit tests pass. Test: Ran the tests hundreds of times on host and target. Test: There are still some failures, but only 1 in 800 and 1 in 300. Change-Id: I9d0732e33695af20b3c3f87c625e623f6b7f9ef2