diff options
author | Ed Maste <emaste@FreeBSD.org> | 2015-07-03 16:57:06 +0000 |
---|---|---|
committer | Ed Maste <emaste@FreeBSD.org> | 2015-07-03 16:57:06 +0000 |
commit | 5e95aa85bb660d45e9905ef1d7180b2678280660 (patch) | |
tree | 3c2e41c3be19b7fc7666ed45a5f91ec3b6e35f2a /source/Plugins/ObjectContainer | |
parent | 12bd4897ff0678fa663e09d78ebc22dd255ceb86 (diff) | |
download | src-test2-5e95aa85bb660d45e9905ef1d7180b2678280660.tar.gz src-test2-5e95aa85bb660d45e9905ef1d7180b2678280660.zip |
Notes
Diffstat (limited to 'source/Plugins/ObjectContainer')
-rw-r--r-- | source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp b/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp index 1e2a0c721ff6..8209d23c0aee 100644 --- a/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp +++ b/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp @@ -364,7 +364,7 @@ ObjectContainerBSDArchive::CreateInstance // Map the entire .a file to be sure that we don't lose any data if the file // gets updated by a new build while this .a file is being used for debugging - DataBufferSP archive_data_sp (file->MemoryMapFileContents(file_offset, length)); + DataBufferSP archive_data_sp (file->MemoryMapFileContentsIfLocal(file_offset, length)); lldb::offset_t archive_data_offset = 0; Archive::shared_ptr archive_sp (Archive::FindCachedArchive (*file, @@ -570,7 +570,7 @@ ObjectContainerBSDArchive::GetModuleSpecifications (const lldb_private::FileSpec if (!archive_sp) { set_archive_arch = true; - DataBufferSP data_sp (file.MemoryMapFileContents(file_offset, file_size)); + DataBufferSP data_sp (file.MemoryMapFileContentsIfLocal(file_offset, file_size)); data.SetData (data_sp, 0, data_sp->GetByteSize()); archive_sp = Archive::ParseAndCacheArchiveForFile(file, ArchSpec(), file_mod_time, file_offset, data); } @@ -595,7 +595,8 @@ ObjectContainerBSDArchive::GetModuleSpecifications (const lldb_private::FileSpec TimeValue object_mod_time; object_mod_time.OffsetWithSeconds(object->ar_date); spec.GetObjectName () = object->ar_name; - spec.SetObjectOffset(object_file_offset); + spec.SetObjectOffset (object_file_offset); + spec.SetObjectSize (file_size - object_file_offset); spec.GetObjectModificationTime () = object_mod_time; } } |