Procházet zdrojové kódy

hle_ipc: Add member function for querying the existence of a domain header

Gets rid of the need to call the getter and then check for null.
Lioncash před 7 roky
rodič
revize
6383653a8d

+ 1 - 2
src/core/hle/ipc_helpers.h

@@ -117,8 +117,7 @@ public:
 
         AlignWithPadding();
 
-        const bool request_has_domain_header{context.GetDomainMessageHeader() != nullptr};
-        if (context.Session()->IsDomain() && request_has_domain_header) {
+        if (context.Session()->IsDomain() && context.HasDomainMessageHeader()) {
             IPC::DomainMessageHeader domain_header{};
             domain_header.num_objects = num_domain_objects;
             PushRaw(domain_header);

+ 4 - 0
src/core/hle/kernel/hle_ipc.h

@@ -165,6 +165,10 @@ public:
         return domain_message_header.get();
     }
 
+    bool HasDomainMessageHeader() const {
+        return domain_message_header != nullptr;
+    }
+
     /// Helper function to read a buffer using the appropriate buffer descriptor
     std::vector<u8> ReadBuffer(int buffer_index = 0) const;
 

+ 1 - 1
src/core/hle/kernel/server_session.cpp

@@ -111,7 +111,7 @@ ResultCode ServerSession::HandleSyncRequest(SharedPtr<Thread> thread) {
 
     ResultCode result = RESULT_SUCCESS;
     // If the session has been converted to a domain, handle the domain request
-    if (IsDomain() && context.GetDomainMessageHeader()) {
+    if (IsDomain() && context.HasDomainMessageHeader()) {
         result = HandleDomainSyncRequest(context);
         // If there is no domain header, the regular session handler is used
     } else if (hle_handler != nullptr) {