Support HomeBrew Loader (#577)
* Make it possibles to load hb-loader and hb-menu One issue remains with hb-menu homebrew icons because of SIMD issues (libjpeg-turbo related) and netloader doesn't work. * Implement GetApplicationControlData * Fix shared fonts for NSO/NRO * Add homebrew NRO romfs support This readd the NRO support by parsing the ASET header * Address comments about HomebrewRomFs * override Dispose in homebrew romfs stream * Use a struct for file timestamp * Simplify positional increments in GetApplicationControlData * Address comments * improve readability of the memory permission check in SetProcessMemoryPermission * Fix previous broken check * Add address space checks in SetProcessMemoryPermission
This commit is contained in:
parent
7e9f555574
commit
b126ea48c6
17 changed files with 633 additions and 17 deletions
|
@ -1,5 +1,6 @@
|
|||
using Ryujinx.HLE.HOS;
|
||||
using Ryujinx.HLE.HOS.Services.FspSrv;
|
||||
using Ryujinx.HLE.Utilities;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
|
@ -279,5 +280,34 @@ namespace Ryujinx.HLE.FileSystem
|
|||
|
||||
throw new InvalidOperationException($"Path {path} is not a child directory of {_rootPath}");
|
||||
}
|
||||
|
||||
public FileTimestamp GetFileTimeStampRaw(string name)
|
||||
{
|
||||
CheckIfDescendentOfRootPath(name);
|
||||
|
||||
DateTime creationDateTime = DateTime.UnixEpoch;
|
||||
DateTime modifiedDateTime = DateTime.UnixEpoch;
|
||||
DateTime lastAccessDateTime = DateTime.UnixEpoch;
|
||||
|
||||
if (File.Exists(name))
|
||||
{
|
||||
creationDateTime = File.GetCreationTime(name);
|
||||
modifiedDateTime = File.GetLastWriteTime(name);
|
||||
lastAccessDateTime = File.GetLastAccessTime(name);
|
||||
}
|
||||
else if (Directory.Exists(name))
|
||||
{
|
||||
creationDateTime = Directory.GetCreationTime(name);
|
||||
modifiedDateTime = Directory.GetLastWriteTime(name);
|
||||
lastAccessDateTime = Directory.GetLastAccessTime(name);
|
||||
}
|
||||
|
||||
return new FileTimestamp
|
||||
{
|
||||
CreationDateTime = creationDateTime,
|
||||
ModifiedDateTime = modifiedDateTime,
|
||||
LastAccessDateTime = lastAccessDateTime
|
||||
};
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue