Fix macos build for r335244
authorPavel Labath <labath@google.com>
Thu, 21 Jun 2018 15:40:33 +0000 (15:40 +0000)
committerPavel Labath <labath@google.com>
Thu, 21 Jun 2018 15:40:33 +0000 (15:40 +0000)
I've made the code accept only 16 byte UUIDs, which is technically not
NFC (previously it would also accept 20 byte ones, but use only the
first 16 bytes), but this should be more correct as mac UUIDs are always
16 byte long.

llvm-svn: 335247

lldb/source/Host/macosx/Symbols.cpp

index b82fea5..b01c48e 100644 (file)
@@ -76,8 +76,8 @@ int LocateMacOSXFilesUsingDebugSymbols(const ModuleSpec &module_spec,
 
   if (uuid && uuid->IsValid()) {
     // Try and locate the dSYM file using DebugSymbols first
-    const UInt8 *module_uuid = (const UInt8 *)uuid->GetBytes();
-    if (module_uuid != NULL) {
+    llvm::ArrayRef<uint8_t> module_uuid = uuid->GetBytes();
+    if (module_uuid.size() == 16) {
       CFCReleaser<CFUUIDRef> module_uuid_ref(::CFUUIDCreateWithBytes(
           NULL, module_uuid[0], module_uuid[1], module_uuid[2], module_uuid[3],
           module_uuid[4], module_uuid[5], module_uuid[6], module_uuid[7],