diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2018-06-07 16:10:42 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2018-06-07 16:10:42 +0000 |
commit | e6f3ecd52cc16e07f8b46742beb3ab01234daa8c (patch) | |
tree | 086fd3d55a34b7c57d44fffd438694c305b8801f /lldb/packages/Python/lldbsuite/test | |
parent | 51ceef775b27e18ee2b5baf9ceb613540c4d809f (diff) | |
download | bcm5719-llvm-e6f3ecd52cc16e07f8b46742beb3ab01234daa8c.tar.gz bcm5719-llvm-e6f3ecd52cc16e07f8b46742beb3ab01234daa8c.zip |
[Platform] Accept arbitrary kext variants
When loading kexts in PlatformDarwinKernel, we use the BundleID as the
filename to to create shared modules. In GetSharedModule we call
ExamineKextForMatchingUUID for any BundleID it finds that is a match, to
see if the UUID is also a match. Until now we were using
Host::ResolveExecutableInBundle which calls a CoreFoundation API to
obtain the executable. However, it's possible that the executable has a
variant suffix (e.g. foo_development) and these files were ignored.
This patch replaces that call with logic that looks for all the binaries
in the bundle. Because of the way ExamineKextForMatchingUUID works, it's
fine to try to load executables that are not valid and we can just
iterate over the list until we found a match.
Differential revision: https://reviews.llvm.org/D47539
llvm-svn: 334205
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
0 files changed, 0 insertions, 0 deletions