diff options
Diffstat (limited to 'src/Ryujinx.Horizon/LogManager')
| -rw-r--r-- | src/Ryujinx.Horizon/LogManager/Ipc/LmLogger.cs | 110 | ||||
| -rw-r--r-- | src/Ryujinx.Horizon/LogManager/Ipc/LogService.cs | 2 | ||||
| -rw-r--r-- | src/Ryujinx.Horizon/LogManager/LmIpcServer.cs | 10 | ||||
| -rw-r--r-- | src/Ryujinx.Horizon/LogManager/LmMain.cs | 2 | ||||
| -rw-r--r-- | src/Ryujinx.Horizon/LogManager/Types/LogPacket.cs | 24 |
5 files changed, 63 insertions, 85 deletions
diff --git a/src/Ryujinx.Horizon/LogManager/Ipc/LmLogger.cs b/src/Ryujinx.Horizon/LogManager/Ipc/LmLogger.cs index 88dddef5..b6460a4b 100644 --- a/src/Ryujinx.Horizon/LogManager/Ipc/LmLogger.cs +++ b/src/Ryujinx.Horizon/LogManager/Ipc/LmLogger.cs @@ -95,74 +95,52 @@ namespace Ryujinx.Horizon.LogManager.Ipc LogDataChunkKey key = (LogDataChunkKey)type; - if (key == LogDataChunkKey.Start) + switch (key) { - reader.Skip(size); - - continue; - } - else if (key == LogDataChunkKey.Stop) - { - break; - } - else if (key == LogDataChunkKey.Line) - { - if (!reader.TryRead<int>(out _logPacket.Line)) - { + case LogDataChunkKey.Start: + reader.Skip(size); + continue; + case LogDataChunkKey.Stop: + break; + case LogDataChunkKey.Line when !reader.TryRead(out _logPacket.Line): + case LogDataChunkKey.DropCount when !reader.TryRead(out _logPacket.DropCount): + case LogDataChunkKey.Time when !reader.TryRead(out _logPacket.Time): return true; - } - } - else if (key == LogDataChunkKey.DropCount) - { - if (!reader.TryRead<long>(out _logPacket.DropCount)) - { - return true; - } - } - else if (key == LogDataChunkKey.Time) - { - if (!reader.TryRead<long>(out _logPacket.Time)) - { - return true; - } - } - else if (key == LogDataChunkKey.Message) - { - string text = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); - - if (isHeadPacket && isTailPacket) - { - _logPacket.Message = text; - } - else - { - _logPacket.Message += text; - - if (_logPacket.Message.Length >= MessageLengthLimit) + case LogDataChunkKey.Message: { - isTailPacket = true; + string text = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + + if (isHeadPacket && isTailPacket) + { + _logPacket.Message = text; + } + else + { + _logPacket.Message += text; + + if (_logPacket.Message.Length >= MessageLengthLimit) + { + isTailPacket = true; + } + } + + break; } - } - } - else if (key == LogDataChunkKey.Filename) - { - _logPacket.Filename = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); - } - else if (key == LogDataChunkKey.Function) - { - _logPacket.Function = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); - } - else if (key == LogDataChunkKey.Module) - { - _logPacket.Module = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); - } - else if (key == LogDataChunkKey.Thread) - { - _logPacket.Thread = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); - } - else if (key == LogDataChunkKey.ProgramName) - { - _logPacket.ProgramName = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + case LogDataChunkKey.Filename: + _logPacket.Filename = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + break; + case LogDataChunkKey.Function: + _logPacket.Function = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + break; + case LogDataChunkKey.Module: + _logPacket.Module = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + break; + case LogDataChunkKey.Thread: + _logPacket.Thread = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + break; + case LogDataChunkKey.ProgramName: + _logPacket.ProgramName = Encoding.UTF8.GetString(reader.GetSpanSafe(size)).TrimEnd(); + break; } } @@ -177,7 +155,7 @@ namespace Ryujinx.Horizon.LogManager.Ipc do { - if (!reader.TryRead<byte>(out encoded)) + if (!reader.TryRead(out encoded)) { return false; } @@ -190,4 +168,4 @@ namespace Ryujinx.Horizon.LogManager.Ipc return true; } } -}
\ No newline at end of file +} diff --git a/src/Ryujinx.Horizon/LogManager/Ipc/LogService.cs b/src/Ryujinx.Horizon/LogManager/Ipc/LogService.cs index 6899739e..9ac9c27e 100644 --- a/src/Ryujinx.Horizon/LogManager/Ipc/LogService.cs +++ b/src/Ryujinx.Horizon/LogManager/Ipc/LogService.cs @@ -17,4 +17,4 @@ namespace Ryujinx.Horizon.LogManager.Ipc return Result.Success; } } -}
\ No newline at end of file +} diff --git a/src/Ryujinx.Horizon/LogManager/LmIpcServer.cs b/src/Ryujinx.Horizon/LogManager/LmIpcServer.cs index 71b844a2..d1a405b8 100644 --- a/src/Ryujinx.Horizon/LogManager/LmIpcServer.cs +++ b/src/Ryujinx.Horizon/LogManager/LmIpcServer.cs @@ -9,13 +9,13 @@ namespace Ryujinx.Horizon.LogManager private const int LogMaxSessionsCount = 42; private const int PointerBufferSize = 0x400; - private const int MaxDomains = 31; - private const int MaxDomainObjects = 61; - private const int MaxPortsCount = 1; + private const int MaxDomains = 31; + private const int MaxDomainObjects = 61; + private const int MaxPortsCount = 1; private static readonly ManagerOptions _logManagerOptions = new(PointerBufferSize, MaxDomains, MaxDomainObjects, false); - private SmApi _sm; + private SmApi _sm; private ServerManager _serverManager; public void Initialize() @@ -40,4 +40,4 @@ namespace Ryujinx.Horizon.LogManager _serverManager.Dispose(); } } -}
\ No newline at end of file +} diff --git a/src/Ryujinx.Horizon/LogManager/LmMain.cs b/src/Ryujinx.Horizon/LogManager/LmMain.cs index bbe96d4c..c229de59 100644 --- a/src/Ryujinx.Horizon/LogManager/LmMain.cs +++ b/src/Ryujinx.Horizon/LogManager/LmMain.cs @@ -14,4 +14,4 @@ ipcServer.Shutdown(); } } -}
\ No newline at end of file +} diff --git a/src/Ryujinx.Horizon/LogManager/Types/LogPacket.cs b/src/Ryujinx.Horizon/LogManager/Types/LogPacket.cs index dbff5e3e..57a389be 100644 --- a/src/Ryujinx.Horizon/LogManager/Types/LogPacket.cs +++ b/src/Ryujinx.Horizon/LogManager/Types/LogPacket.cs @@ -5,15 +5,15 @@ namespace Ryujinx.Horizon.LogManager.Types { struct LogPacket { - public string Message; - public int Line; - public string Filename; - public string Function; - public string Module; - public string Thread; - public long DropCount; - public long Time; - public string ProgramName; + public string Message; + public int Line; + public string Filename; + public string Function; + public string Module; + public string Thread; + public long DropCount; + public long Time; + public string ProgramName; public LogSeverity Severity; public override string ToString() @@ -35,12 +35,12 @@ namespace Ryujinx.Horizon.LogManager.Types { builder.AppendLine($" ProgramName: {ProgramName}"); } - + if (!string.IsNullOrEmpty(Module)) { builder.AppendLine($" Module: {Module}"); } - + if (!string.IsNullOrEmpty(Thread)) { builder.AppendLine($" Thread: {Thread}"); @@ -69,4 +69,4 @@ namespace Ryujinx.Horizon.LogManager.Types return builder.ToString(); } } -}
\ No newline at end of file +} |
