Revert "Fixing a subtle issue on Mac OS X systems with dSYMs..."

This reverts commit r248985, as it was breaking all remote
expression-evaluating tests (on android at least).

llvm-svn: 248995
This commit is contained in:
Pavel Labath
2015-10-01 09:03:33 +00:00
parent 2bfb7cbddb
commit 746ffd6980
5 changed files with 142 additions and 128 deletions

View File

@@ -1045,19 +1045,19 @@ ModuleList::GetSharedModule
// Fixup the incoming path in case the path points to a valid file, yet
// the arch or UUID (if one was passed in) don't match.
ModuleSpec located_binary_modulespec = Symbols::LocateExecutableObjectFile (module_spec);
FileSpec file_spec = Symbols::LocateExecutableObjectFile (module_spec);
// Don't look for the file if it appears to be the same one we already
// checked for above...
if (located_binary_modulespec.GetFileSpec() != module_file_spec)
if (file_spec != module_file_spec)
{
if (!located_binary_modulespec.GetFileSpec().Exists())
if (!file_spec.Exists())
{
located_binary_modulespec.GetFileSpec().GetPath(path, sizeof(path));
file_spec.GetPath(path, sizeof(path));
if (path[0] == '\0')
module_file_spec.GetPath(path, sizeof(path));
// How can this check ever be true? This branch it is false, and we haven't modified file_spec.
if (located_binary_modulespec.GetFileSpec().Exists())
if (file_spec.Exists())
{
std::string uuid_str;
if (uuid_ptr && uuid_ptr->IsValid())
@@ -1084,8 +1084,9 @@ ModuleList::GetSharedModule
// Make sure no one else can try and get or create a module while this
// function is actively working on it by doing an extra lock on the
// global mutex list.
ModuleSpec platform_module_spec(located_binary_modulespec);
platform_module_spec.GetPlatformFileSpec() = located_binary_modulespec.GetFileSpec();
ModuleSpec platform_module_spec(module_spec);
platform_module_spec.GetFileSpec() = file_spec;
platform_module_spec.GetPlatformFileSpec() = file_spec;
ModuleList matching_module_list;
if (shared_module_list.FindModules (platform_module_spec, matching_module_list) > 0)
{
@@ -1095,7 +1096,7 @@ ModuleList::GetSharedModule
// then we should make sure the modification time hasn't changed!
if (platform_module_spec.GetUUIDPtr() == NULL)
{
TimeValue file_spec_mod_time(located_binary_modulespec.GetFileSpec().GetModificationTime());
TimeValue file_spec_mod_time(file_spec.GetModificationTime());
if (file_spec_mod_time.IsValid())
{
if (file_spec_mod_time != module_sp->GetModificationTime())
@@ -1124,9 +1125,9 @@ ModuleList::GetSharedModule
}
else
{
located_binary_modulespec.GetFileSpec().GetPath(path, sizeof(path));
file_spec.GetPath(path, sizeof(path));
if (located_binary_modulespec.GetFileSpec())
if (file_spec)
{
if (arch.IsValid())
error.SetErrorStringWithFormat("unable to open %s architecture in '%s'", arch.GetArchitectureName(), path);