From ffe2f926b22da336f33334c0998a00260eb28e85 Mon Sep 17 00:00:00 2001 From: Thog Date: Mon, 24 Jun 2019 22:05:10 +0200 Subject: [PATCH] CreateNotificationService should check for null UUID --- Ryujinx.HLE/HOS/Services/Friend/FriendErr.cs | 7 +++++++ Ryujinx.HLE/HOS/Services/Friend/IServiceCreator.cs | 7 +++++++ 2 files changed, 14 insertions(+) create mode 100644 Ryujinx.HLE/HOS/Services/Friend/FriendErr.cs diff --git a/Ryujinx.HLE/HOS/Services/Friend/FriendErr.cs b/Ryujinx.HLE/HOS/Services/Friend/FriendErr.cs new file mode 100644 index 0000000000..579c46e289 --- /dev/null +++ b/Ryujinx.HLE/HOS/Services/Friend/FriendErr.cs @@ -0,0 +1,7 @@ +namespace Ryujinx.HLE.HOS.Services.Friend +{ + static class FriendErr + { + public const int InvalidUuid = 2; + } +} \ No newline at end of file diff --git a/Ryujinx.HLE/HOS/Services/Friend/IServiceCreator.cs b/Ryujinx.HLE/HOS/Services/Friend/IServiceCreator.cs index 2464cb53aa..033965d9e8 100644 --- a/Ryujinx.HLE/HOS/Services/Friend/IServiceCreator.cs +++ b/Ryujinx.HLE/HOS/Services/Friend/IServiceCreator.cs @@ -2,6 +2,8 @@ using Ryujinx.HLE.HOS.Ipc; using Ryujinx.HLE.Utilities; using System.Collections.Generic; +using static Ryujinx.HLE.HOS.ErrorCode; + namespace Ryujinx.HLE.HOS.Services.Friend { class IServiceCreator : IpcService @@ -33,6 +35,11 @@ namespace Ryujinx.HLE.HOS.Services.Friend { UInt128 userId = new UInt128(context.RequestData.ReadBytes(0x10)); + if (userId.IsNull) + { + return MakeError(ErrorModule.Friends, FriendErr.InvalidUuid); + } + MakeObject(context, new INotificationService(userId)); return 0;