aboutsummaryrefslogtreecommitdiff
path: root/src/Ryujinx.Common/SystemInfo
diff options
context:
space:
mode:
Diffstat (limited to 'src/Ryujinx.Common/SystemInfo')
-rw-r--r--src/Ryujinx.Common/SystemInfo/LinuxSystemInfo.cs31
-rw-r--r--src/Ryujinx.Common/SystemInfo/MacOSSystemInfo.cs18
-rw-r--r--src/Ryujinx.Common/SystemInfo/SystemInfo.cs10
-rw-r--r--src/Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs10
4 files changed, 35 insertions, 34 deletions
diff --git a/src/Ryujinx.Common/SystemInfo/LinuxSystemInfo.cs b/src/Ryujinx.Common/SystemInfo/LinuxSystemInfo.cs
index b0c15e49..08aa452e 100644
--- a/src/Ryujinx.Common/SystemInfo/LinuxSystemInfo.cs
+++ b/src/Ryujinx.Common/SystemInfo/LinuxSystemInfo.cs
@@ -20,7 +20,7 @@ namespace Ryujinx.Common.SystemInfo
{
["model name"] = null,
["Processor"] = null,
- ["Hardware"] = null
+ ["Hardware"] = null,
};
ParseKeyValues("/proc/cpuinfo", cpuDict);
@@ -31,7 +31,7 @@ namespace Ryujinx.Common.SystemInfo
var memDict = new Dictionary<string, string>(StringComparer.Ordinal)
{
["MemTotal"] = null,
- ["MemAvailable"] = null
+ ["MemAvailable"] = null,
};
ParseKeyValues("/proc/meminfo", memDict);
@@ -56,25 +56,30 @@ namespace Ryujinx.Common.SystemInfo
int count = itemDict.Count;
- using (StreamReader file = new StreamReader(filePath))
+ using StreamReader file = new(filePath);
+
+ string line;
+ while ((line = file.ReadLine()) != null)
{
- string line;
- while ((line = file.ReadLine()) != null)
+ string[] kvPair = line.Split(':', 2, StringSplitOptions.TrimEntries);
+
+ if (kvPair.Length < 2)
{
- string[] kvPair = line.Split(':', 2, StringSplitOptions.TrimEntries);
+ continue;
+ }
- if (kvPair.Length < 2) continue;
+ string key = kvPair[0];
- string key = kvPair[0];
+ if (itemDict.TryGetValue(key, out string value) && value == null)
+ {
+ itemDict[key] = kvPair[1];
- if (itemDict.TryGetValue(key, out string value) && value == null)
+ if (--count <= 0)
{
- itemDict[key] = kvPair[1];
-
- if (--count <= 0) break;
+ break;
}
}
}
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Common/SystemInfo/MacOSSystemInfo.cs b/src/Ryujinx.Common/SystemInfo/MacOSSystemInfo.cs
index 168960f7..98a0d8ab 100644
--- a/src/Ryujinx.Common/SystemInfo/MacOSSystemInfo.cs
+++ b/src/Ryujinx.Common/SystemInfo/MacOSSystemInfo.cs
@@ -14,14 +14,14 @@ namespace Ryujinx.Common.SystemInfo
{
string cpuName = GetCpuidCpuName();
- if (cpuName == null && sysctlbyname("machdep.cpu.brand_string", out cpuName) != 0)
+ if (cpuName == null && SysctlByName("machdep.cpu.brand_string", out cpuName) != 0)
{
cpuName = "Unknown";
}
ulong totalRAM = 0;
- if (sysctlbyname("hw.memsize", ref totalRAM) != 0) // Bytes
+ if (SysctlByName("hw.memsize", ref totalRAM) != 0) // Bytes
{
totalRAM = 0;
}
@@ -63,7 +63,7 @@ namespace Ryujinx.Common.SystemInfo
[LibraryImport(SystemLibraryName, SetLastError = true)]
private static partial int sysctlbyname([MarshalAs(UnmanagedType.LPStr)] string name, IntPtr oldValue, ref ulong oldSize, IntPtr newValue, ulong newValueSize);
- private static int sysctlbyname(string name, IntPtr oldValue, ref ulong oldSize)
+ private static int SysctlByName(string name, IntPtr oldValue, ref ulong oldSize)
{
if (sysctlbyname(name, oldValue, ref oldSize, IntPtr.Zero, 0) == -1)
{
@@ -77,23 +77,23 @@ namespace Ryujinx.Common.SystemInfo
return 0;
}
- private static int sysctlbyname<T>(string name, ref T oldValue)
+ private static int SysctlByName<T>(string name, ref T oldValue)
{
unsafe
{
ulong oldValueSize = (ulong)Unsafe.SizeOf<T>();
- return sysctlbyname(name, (IntPtr)Unsafe.AsPointer(ref oldValue), ref oldValueSize);
+ return SysctlByName(name, (IntPtr)Unsafe.AsPointer(ref oldValue), ref oldValueSize);
}
}
- private static int sysctlbyname(string name, out string oldValue)
+ private static int SysctlByName(string name, out string oldValue)
{
oldValue = default;
ulong strSize = 0;
- int res = sysctlbyname(name, IntPtr.Zero, ref strSize);
+ int res = SysctlByName(name, IntPtr.Zero, ref strSize);
if (res == 0)
{
@@ -103,7 +103,7 @@ namespace Ryujinx.Common.SystemInfo
{
fixed (byte* rawDataPtr = rawData)
{
- res = sysctlbyname(name, (IntPtr)rawDataPtr, ref strSize);
+ res = SysctlByName(name, (IntPtr)rawDataPtr, ref strSize);
}
if (res == 0)
@@ -152,6 +152,6 @@ namespace Ryujinx.Common.SystemInfo
}
[LibraryImport(SystemLibraryName, SetLastError = true)]
- private static partial int host_statistics64(uint host_priv, int host_flavor, ref VMStatistics64 host_info64_out, ref uint host_info64_outCnt);
+ private static partial int host_statistics64(uint hostPriv, int hostFlavor, ref VMStatistics64 hostInfo64Out, ref uint hostInfo64OutCnt);
}
}
diff --git a/src/Ryujinx.Common/SystemInfo/SystemInfo.cs b/src/Ryujinx.Common/SystemInfo/SystemInfo.cs
index e9ce3c58..55ec0127 100644
--- a/src/Ryujinx.Common/SystemInfo/SystemInfo.cs
+++ b/src/Ryujinx.Common/SystemInfo/SystemInfo.cs
@@ -43,12 +43,10 @@ namespace Ryujinx.Common.SystemInfo
{
return new MacOSSystemInfo();
}
- else
- {
- Logger.Error?.Print(LogClass.Application, "SystemInfo unsupported on this platform");
- return new SystemInfo();
- }
+ Logger.Error?.Print(LogClass.Application, "SystemInfo unsupported on this platform");
+
+ return new SystemInfo();
}
// x86 exposes a 48 byte ASCII "CPU brand" string via CPUID leaves 0x80000002-0x80000004.
@@ -77,4 +75,4 @@ namespace Ryujinx.Common.SystemInfo
return string.IsNullOrEmpty(name) ? null : name;
}
}
-} \ No newline at end of file
+}
diff --git a/src/Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs b/src/Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs
index c3598a1e..3b36d6e2 100644
--- a/src/Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs
+++ b/src/Ryujinx.Common/SystemInfo/WindowsSystemInfo.cs
@@ -17,15 +17,13 @@ namespace Ryujinx.Common.SystemInfo
private static (ulong Total, ulong Available) GetMemoryStats()
{
- MemoryStatusEx memStatus = new MemoryStatusEx();
+ MemoryStatusEx memStatus = new();
if (GlobalMemoryStatusEx(ref memStatus))
{
return (memStatus.TotalPhys, memStatus.AvailPhys); // Bytes
}
- else
- {
- Logger.Error?.Print(LogClass.Application, $"GlobalMemoryStatusEx failed. Error {Marshal.GetLastWin32Error():X}");
- }
+
+ Logger.Error?.Print(LogClass.Application, $"GlobalMemoryStatusEx failed. Error {Marshal.GetLastWin32Error():X}");
return (0, 0);
}
@@ -86,4 +84,4 @@ namespace Ryujinx.Common.SystemInfo
return null;
}
}
-} \ No newline at end of file
+}