meso: only increment send/recv/exch on success
This commit is contained in:
1 parent
e468f59c9d
commit
f7d46d38fa
1 file changed
+6
-3
@@ -44,16 +44,19 @@ namespace ams::kern {
|
|||||||
Result KSessionRequest::SessionMappings::PushSend(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
Result KSessionRequest::SessionMappings::PushSend(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
||||||
MESOSPHERE_ASSERT(m_num_recv == 0);
|
MESOSPHERE_ASSERT(m_num_recv == 0);
|
||||||
MESOSPHERE_ASSERT(m_num_exch == 0);
|
MESOSPHERE_ASSERT(m_num_exch == 0);
|
||||||
R_RETURN(this->PushMap(client, server, size, state, m_num_send++));
|
ON_RESULT_SUCCESS { ++m_num_send; };
|
||||||
|
R_RETURN(this->PushMap(client, server, size, state, m_num_send));
|
||||||
}
|
}
|
||||||
|
|
||||||
Result KSessionRequest::SessionMappings::PushReceive(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
Result KSessionRequest::SessionMappings::PushReceive(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
||||||
MESOSPHERE_ASSERT(m_num_exch == 0);
|
MESOSPHERE_ASSERT(m_num_exch == 0);
|
||||||
R_RETURN(this->PushMap(client, server, size, state, m_num_send + m_num_recv++));
|
ON_RESULT_SUCCESS { ++m_num_recv; };
|
||||||
|
R_RETURN(this->PushMap(client, server, size, state, m_num_send + m_num_recv));
|
||||||
}
|
}
|
||||||
|
|
||||||
Result KSessionRequest::SessionMappings::PushExchange(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
Result KSessionRequest::SessionMappings::PushExchange(KProcessAddress client, KProcessAddress server, size_t size, KMemoryState state) {
|
||||||
R_RETURN(this->PushMap(client, server, size, state, m_num_send + m_num_recv + m_num_exch++));
|
ON_RESULT_SUCCESS { ++m_num_exch; };
|
||||||
|
R_RETURN(this->PushMap(client, server, size, state, m_num_send + m_num_recv + m_num_exch));
|
||||||
}
|
}
|
||||||
|
|
||||||
void KSessionRequest::SessionMappings::Finalize() {
|
void KSessionRequest::SessionMappings::Finalize() {
|
||||||
|
|||||||
Reference in new issue
Block a user