Don't memset the whole connection status structs to zero.
Some games pass smaller versions of the struct.merge-requests/39/head
parent
19015c097c
commit
b8eae2b709
|
@ -882,17 +882,20 @@ bool GetConnectionInfo( HSteamNetConnection hConn, SteamNetConnectionInfo_t *pIn
|
|||
auto connect_socket = connect_sockets.find(hConn);
|
||||
if (connect_socket == connect_sockets.end()) return false;
|
||||
|
||||
memset(pInfo, 0, sizeof(SteamNetConnectionInfo_t));
|
||||
pInfo->m_identityRemote = connect_socket->second.remote_identity;
|
||||
pInfo->m_nUserData = connect_socket->second.user_data;
|
||||
pInfo->m_hListenSocket = connect_socket->second.listen_socket_id;
|
||||
//pInfo->m_addrRemote; //TODO
|
||||
pInfo->m_addrRemote.Clear(); //TODO
|
||||
pInfo->m_idPOPRemote = 0;
|
||||
pInfo->m_idPOPRelay = 0;
|
||||
pInfo->m_eState = convert_status(connect_socket->second.status);
|
||||
pInfo->m_eEndReason = 0; //TODO
|
||||
pInfo->m_szEndDebug[0] = 0;
|
||||
sprintf(pInfo->m_szConnectionDescription, "%u", hConn);
|
||||
|
||||
//Note some games might not allocate a struct the whole size of SteamNetConnectionInfo_t
|
||||
//keep this in mind in future interface updates
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
@ -954,13 +957,21 @@ bool GetQuickConnectionStatus( HSteamNetConnection hConn, SteamNetworkingQuickCo
|
|||
std::lock_guard<std::recursive_mutex> lock(global_mutex);
|
||||
auto connect_socket = connect_sockets.find(hConn);
|
||||
if (connect_socket == connect_sockets.end()) return false;
|
||||
memset(pStats, 0, sizeof(SteamNetworkingQuickConnectionStatus));
|
||||
|
||||
pStats->m_eState = convert_status(connect_socket->second.status);
|
||||
pStats->m_nPing = 10; //TODO: calculate real numbers?
|
||||
pStats->m_flConnectionQualityLocal = 1.0;
|
||||
pStats->m_flConnectionQualityRemote = 1.0;
|
||||
//TODO: rest
|
||||
pStats->m_flOutPacketsPerSec = 0.0;
|
||||
pStats->m_flOutBytesPerSec = 0.0;
|
||||
pStats->m_flInPacketsPerSec = 0.0;
|
||||
pStats->m_flInBytesPerSec = 0.0;
|
||||
pStats->m_cbSentUnackedReliable = 0.0;
|
||||
pStats->m_usecQueueTime = 0.0;
|
||||
|
||||
//Note some games (volcanoids) might not allocate a struct the whole size of SteamNetworkingQuickConnectionStatus
|
||||
//keep this in mind in future interface updates
|
||||
|
||||
return true;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue