aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAc_K <Acoustik666@gmail.com>2018-06-13 00:53:54 +0000
committerGitHub <noreply@github.com>2018-06-13 00:53:54 +0000
commitf1e866e248cfc90a783b7b4cb852ad51c9b0de26 (patch)
tree454bfe0b8ee9a51e558908c06863331c359f23ab
parent3600de608046301000a6ad7cf287024bb872c363 (diff)
parentc646a009188252bb30785992f7e19155e1bf70a7 (diff)
Merge pull request #157 from Cyuubi/pctl-initialize-and-without-initialize
[PCTL] Add CreateServiceWithoutInitialize and Initialize
-rw-r--r--Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlService.cs25
-rw-r--r--Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlServiceFactory.cs12
2 files changed, 33 insertions, 4 deletions
diff --git a/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlService.cs b/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlService.cs
index eb363ade..60a69f58 100644
--- a/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlService.cs
+++ b/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlService.cs
@@ -1,3 +1,4 @@
+using Ryujinx.HLE.Logging;
using Ryujinx.HLE.OsHle.Ipc;
using System.Collections.Generic;
@@ -9,12 +10,32 @@ namespace Ryujinx.HLE.OsHle.Services.Pctl
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
- public IParentalControlService()
+ private bool Initialized = false;
+
+ private bool NeedInitialize;
+
+ public IParentalControlService(bool NeedInitialize = true)
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
- //...
+ { 1, Initialize }
};
+
+ this.NeedInitialize = NeedInitialize;
+ }
+
+ public long Initialize(ServiceCtx Context)
+ {
+ if (NeedInitialize && !Initialized)
+ {
+ Initialized = true;
+ }
+ else
+ {
+ Context.Ns.Log.PrintWarning(LogClass.ServicePctl, "Service is already initialized!");
+ }
+
+ return 0;
}
}
} \ No newline at end of file
diff --git a/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlServiceFactory.cs b/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlServiceFactory.cs
index 094245f6..7ef91d7f 100644
--- a/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlServiceFactory.cs
+++ b/Ryujinx.HLE/OsHle/Services/Pctl/IParentalControlServiceFactory.cs
@@ -13,15 +13,23 @@ namespace Ryujinx.HLE.OsHle.Services.Pctl
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
- { 0, CreateService }
+ { 0, CreateService },
+ { 1, CreateServiceWithoutInitialize }
};
}
- public static long CreateService(ServiceCtx Context)
+ public long CreateService(ServiceCtx Context)
{
MakeObject(Context, new IParentalControlService());
return 0;
}
+
+ public long CreateServiceWithoutInitialize(ServiceCtx Context)
+ {
+ MakeObject(Context, new IParentalControlService(false));
+
+ return 0;
+ }
}
} \ No newline at end of file