mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-01-10 08:09:26 +01:00
FS: Reshuffle Rename to fix steamrt unit test failure
This commit is contained in:
parent
09875c6403
commit
df22439826
@ -552,16 +552,20 @@ ResultCode HostFileSystem::Rename(Uid uid, Gid gid, const std::string& old_path,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Finally, remove the child from the old parent and move it to the new parent.
|
|
||||||
FstEntry* new_entry = GetFstEntryForPath(new_path);
|
FstEntry* new_entry = GetFstEntryForPath(new_path);
|
||||||
|
new_entry->name = split_new_path.file_name;
|
||||||
|
|
||||||
|
// Finally, remove the child from the old parent and move it to the new parent.
|
||||||
const auto it = std::find_if(old_parent->children.begin(), old_parent->children.end(),
|
const auto it = std::find_if(old_parent->children.begin(), old_parent->children.end(),
|
||||||
GetNamePredicate(split_old_path.file_name));
|
GetNamePredicate(split_old_path.file_name));
|
||||||
if (it != old_parent->children.end())
|
if (it != old_parent->children.end())
|
||||||
{
|
{
|
||||||
*new_entry = *it;
|
new_entry->data = it->data;
|
||||||
|
new_entry->children = it->children;
|
||||||
|
|
||||||
old_parent->children.erase(it);
|
old_parent->children.erase(it);
|
||||||
}
|
}
|
||||||
new_entry->name = split_new_path.file_name;
|
|
||||||
SaveFst();
|
SaveFst();
|
||||||
|
|
||||||
return ResultCode::Success;
|
return ResultCode::Success;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user