فهرست منبع

Show service short name for unimplemented commands

gdkchan 8 سال پیش
والد
کامیت
a7ecf6dd2d

+ 5 - 2
Ryujinx.Core/OsHle/Handles/KSession.cs

@@ -7,9 +7,12 @@ namespace Ryujinx.Core.OsHle.Handles
     {
         public IpcService Service { get; private set; }
 
-        public KSession(IpcService Service)
+        public string ServiceName { get; private set; }
+
+        public KSession(IpcService Service, string ServiceName)
         {
-            this.Service = Service;
+            this.Service     = Service;
+            this.ServiceName = ServiceName;
         }
 
         public void Dispose()

+ 4 - 2
Ryujinx.Core/OsHle/Services/IpcService.cs

@@ -104,7 +104,9 @@ namespace Ryujinx.Core.OsHle.Services
             }
             else
             {
-                throw new NotImplementedException($"{Service.GetType().Name}: {CommandId}");
+                string DbgMessage = $"{Context.Session.ServiceName} {Service.GetType().Name}: {CommandId}";
+
+                throw new NotImplementedException(DbgMessage);
             }
         }
 
@@ -118,7 +120,7 @@ namespace Ryujinx.Core.OsHle.Services
             }
             else
             {
-                KSession Session = new KSession(Obj);
+                KSession Session = new KSession(Obj, Context.Session.ServiceName);
 
                 int Handle = Context.Process.HandleTable.OpenHandle(Session);
 

+ 1 - 1
Ryujinx.Core/OsHle/Services/Sm/IUserInterface.cs

@@ -57,7 +57,7 @@ namespace Ryujinx.Core.OsHle.Services.Sm
                 return 0;
             }
 
-            KSession Session = new KSession(ServiceFactory.MakeService(Name));
+            KSession Session = new KSession(ServiceFactory.MakeService(Name), Name);
 
             int Handle = Context.Process.HandleTable.OpenHandle(Session);
 

+ 1 - 1
Ryujinx.Core/OsHle/Svc/SvcSystem.cs

@@ -153,7 +153,7 @@ namespace Ryujinx.Core.OsHle.Svc
 
             //TODO: Validate that app has perms to access the service, and that the service
             //actually exists, return error codes otherwise.
-            KSession Session = new KSession(ServiceFactory.MakeService(Name));
+            KSession Session = new KSession(ServiceFactory.MakeService(Name), Name);
 
             ulong Handle = (ulong)Process.HandleTable.OpenHandle(Session);