From a33dc2f4919f7fdc8ea9db41c4c70c38cedfd3df Mon Sep 17 00:00:00 2001 From: mageven <62494521+mageven@users.noreply.github.com> Date: Tue, 4 Aug 2020 05:02:53 +0530 Subject: Improved Logger (#1292) * Logger class changes only Now compile-time checking is possible with the help of Nullable Value types. * Misc formatting * Manual optimizations PrintGuestLog PrintGuestStackTrace Surfaceflinger DequeueBuffer * Reduce SendVibrationXX log level to Debug * Add Notice log level This level is always enabled and used to print system info, etc... Also, rewrite LogColor to switch expression as colors are static * Unify unhandled exception event handlers * Print enabled LogLevels during init * Re-add App Exit disposes in proper order nit: switch case spacing * Revert PrintGuestStackTrace to Info logs due to #1407 PrintGuestStackTrace is now called in some critical error handlers so revert to old behavior as KThread isn't part of Guest. * Batch replace Logger statements --- .../Services/Account/Acc/IAccountServiceForApplication.cs | 12 ++++++------ .../HOS/Services/Account/Acc/IManagerForApplication.cs | 6 +++--- Ryujinx.HLE/HOS/Services/Account/Acc/IProfile.cs | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) (limited to 'Ryujinx.HLE/HOS/Services/Account') diff --git a/Ryujinx.HLE/HOS/Services/Account/Acc/IAccountServiceForApplication.cs b/Ryujinx.HLE/HOS/Services/Account/Acc/IAccountServiceForApplication.cs index 96407d1d..9678a4ca 100644 --- a/Ryujinx.HLE/HOS/Services/Account/Acc/IAccountServiceForApplication.cs +++ b/Ryujinx.HLE/HOS/Services/Account/Acc/IAccountServiceForApplication.cs @@ -101,7 +101,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc if (!context.Device.System.State.Account.TryGetUser(userId, out UserProfile userProfile)) { - Logger.PrintWarning(LogClass.ServiceAcc, $"User 0x{userId} not found!"); + Logger.Warning?.Print(LogClass.ServiceAcc, $"User 0x{userId} not found!"); return ResultCode.UserNotFound; } @@ -143,7 +143,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // This checks something related to baas (online), and then return an invalid UserId if the check in baas returns an error code. // In our case, we can just log it for now. - Logger.PrintStub(LogClass.ServiceAcc, new { baasCheck }); + Logger.Stub?.PrintStub(LogClass.ServiceAcc, new { baasCheck }); } // As we returned an invalid UserId if there is more than one user earlier, now we can return only the first one. @@ -182,7 +182,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc _applicationLaunchProperty = ApplicationLaunchProperty.GetByPid(context); } - Logger.PrintStub(LogClass.ServiceAcc, new { unknown }); + Logger.Stub?.PrintStub(LogClass.ServiceAcc, new { unknown }); return ResultCode.Success; } @@ -246,7 +246,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // TODO: Store thumbnailBuffer somewhere, in save data 0x8000000000000010 ? - Logger.PrintStub(LogClass.ServiceAcc); + Logger.Stub?.PrintStub(LogClass.ServiceAcc); return ResultCode.Success; } @@ -269,7 +269,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // TODO: Clear the Thumbnail somewhere, in save data 0x8000000000000010 ? - Logger.PrintStub(LogClass.ServiceAcc); + Logger.Stub?.PrintStub(LogClass.ServiceAcc); return ResultCode.Success; } @@ -291,7 +291,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc context.ResponseData.Write(context.Device.Application.ControlData.Value.UserAccountSwitchLock); - Logger.PrintStub(LogClass.ServiceAcc); + Logger.Stub?.PrintStub(LogClass.ServiceAcc); return ResultCode.Success; } diff --git a/Ryujinx.HLE/HOS/Services/Account/Acc/IManagerForApplication.cs b/Ryujinx.HLE/HOS/Services/Account/Acc/IManagerForApplication.cs index 801eae6a..70c5965e 100644 --- a/Ryujinx.HLE/HOS/Services/Account/Acc/IManagerForApplication.cs +++ b/Ryujinx.HLE/HOS/Services/Account/Acc/IManagerForApplication.cs @@ -20,7 +20,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // CheckAvailability() public ResultCode CheckAvailability(ServiceCtx context) { - Logger.PrintStub(LogClass.ServiceAcc); + Logger.Stub?.PrintStub(LogClass.ServiceAcc); return ResultCode.Success; } @@ -29,7 +29,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // GetAccountId() -> nn::account::NetworkServiceAccountId public ResultCode GetAccountId(ServiceCtx context) { - Logger.PrintStub(LogClass.ServiceAcc, new { NetworkServiceAccountId }); + Logger.Stub?.PrintStub(LogClass.ServiceAcc, new { NetworkServiceAccountId }); context.ResponseData.Write(NetworkServiceAccountId); @@ -40,7 +40,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // GetNintendoAccountUserResourceCacheForApplication() -> (nn::account::NintendoAccountId, buffer, buffer) public ResultCode GetNintendoAccountUserResourceCacheForApplication(ServiceCtx context) { - Logger.PrintStub(LogClass.ServiceAcc, new { NetworkServiceAccountId }); + Logger.Stub?.PrintStub(LogClass.ServiceAcc, new { NetworkServiceAccountId }); context.ResponseData.Write(NetworkServiceAccountId); diff --git a/Ryujinx.HLE/HOS/Services/Account/Acc/IProfile.cs b/Ryujinx.HLE/HOS/Services/Account/Acc/IProfile.cs index 24a76e50..32ee41d8 100644 --- a/Ryujinx.HLE/HOS/Services/Account/Acc/IProfile.cs +++ b/Ryujinx.HLE/HOS/Services/Account/Acc/IProfile.cs @@ -22,7 +22,7 @@ namespace Ryujinx.HLE.HOS.Services.Account.Acc // Get() -> (nn::account::profile::ProfileBase, buffer) public ResultCode Get(ServiceCtx context) { - Logger.PrintStub(LogClass.ServiceAcc); + Logger.Stub?.PrintStub(LogClass.ServiceAcc); long position = context.Request.ReceiveBuff[0].Position; -- cgit v1.2.3