mirror of
https://github.com/ValveSoftware/Proton.git
synced 2025-05-11 06:09:30 +03:00
lsteamclient: Use function overloads for networking message conversions.
This commit is contained in:
parent
8d0ab1f8d3
commit
6d06d8bc2d
@ -6,6 +6,97 @@
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(steamclient);
|
||||
|
||||
static void steam_networking_message_utow( w_SteamNetworkingMessage_t_144 &dst, const u_SteamNetworkingMessage_t_144 &src )
|
||||
{
|
||||
dst.m_cbSize = src.m_cbSize;
|
||||
dst.m_conn = src.m_conn;
|
||||
dst.m_sender = src.m_sender;
|
||||
dst.m_nConnUserData = src.m_nConnUserData;
|
||||
dst.m_usecTimeReceived = src.m_usecTimeReceived;
|
||||
dst.m_nMessageNumber = src.m_nMessageNumber;
|
||||
dst.m_nChannel = src.m_nChannel;
|
||||
}
|
||||
|
||||
static void steam_networking_message_utow( w_SteamNetworkingMessage_t_147 &dst, const u_SteamNetworkingMessage_t_147 &src )
|
||||
{
|
||||
dst.m_cbSize = src.m_cbSize;
|
||||
dst.m_conn = src.m_conn;
|
||||
dst.m_identityPeer = src.m_identityPeer;
|
||||
dst.m_nConnUserData = src.m_nConnUserData;
|
||||
dst.m_usecTimeReceived = src.m_usecTimeReceived;
|
||||
dst.m_nMessageNumber = src.m_nMessageNumber;
|
||||
dst.m_nChannel = src.m_nChannel;
|
||||
dst.m_nFlags = src.m_nFlags;
|
||||
dst.m_nUserData = src.m_nUserData;
|
||||
}
|
||||
|
||||
static void steam_networking_message_utow( w_SteamNetworkingMessage_t_153a &dst, const u_SteamNetworkingMessage_t_153a &src )
|
||||
{
|
||||
dst.m_cbSize = src.m_cbSize;
|
||||
dst.m_conn = src.m_conn;
|
||||
dst.m_identityPeer = src.m_identityPeer;
|
||||
dst.m_nConnUserData = src.m_nConnUserData;
|
||||
dst.m_usecTimeReceived = src.m_usecTimeReceived;
|
||||
dst.m_nMessageNumber = src.m_nMessageNumber;
|
||||
dst.m_nChannel = src.m_nChannel;
|
||||
dst.m_nFlags = src.m_nFlags;
|
||||
dst.m_nUserData = src.m_nUserData;
|
||||
dst.m_idxLane = src.m_idxLane;
|
||||
}
|
||||
|
||||
static void U_CDECL u_SteamNetworkingMessage_t_147_FreeData( u_SteamNetworkingMessage_t_147 *msg )
|
||||
{
|
||||
free( msg->m_pData );
|
||||
msg->m_pData = NULL;
|
||||
}
|
||||
|
||||
static void steam_networking_message_wtou( u_SteamNetworkingMessage_t_147& dst, const w_SteamNetworkingMessage_t_147& src )
|
||||
{
|
||||
if (!dst.m_pData)
|
||||
{
|
||||
dst.m_pData = malloc( src.m_cbSize );
|
||||
dst.m_pfnFreeData = u_SteamNetworkingMessage_t_147_FreeData;
|
||||
}
|
||||
|
||||
memcpy( dst.m_pData, src.m_pData, src.m_cbSize );
|
||||
dst.m_cbSize = src.m_cbSize;
|
||||
dst.m_conn = src.m_conn;
|
||||
dst.m_identityPeer = src.m_identityPeer;
|
||||
dst.m_nConnUserData = src.m_nConnUserData;
|
||||
dst.m_usecTimeReceived = src.m_usecTimeReceived;
|
||||
dst.m_nMessageNumber = src.m_nMessageNumber;
|
||||
dst.m_nChannel = src.m_nChannel;
|
||||
dst.m_nFlags = src.m_nFlags;
|
||||
dst.m_nUserData = src.m_nUserData;
|
||||
}
|
||||
|
||||
static void U_CDECL u_SteamNetworkingMessage_t_153a_FreeData( u_SteamNetworkingMessage_t_153a *msg )
|
||||
{
|
||||
free( msg->m_pData );
|
||||
msg->m_pData = NULL;
|
||||
}
|
||||
|
||||
static void steam_networking_message_wtou( u_SteamNetworkingMessage_t_153a& dst, const w_SteamNetworkingMessage_t_153a& src )
|
||||
{
|
||||
if (!dst.m_pData)
|
||||
{
|
||||
dst.m_pData = malloc( src.m_cbSize );
|
||||
dst.m_pfnFreeData = u_SteamNetworkingMessage_t_153a_FreeData;
|
||||
}
|
||||
|
||||
memcpy( dst.m_pData, src.m_pData, src.m_cbSize );
|
||||
dst.m_cbSize = src.m_cbSize;
|
||||
dst.m_conn = src.m_conn;
|
||||
dst.m_identityPeer = src.m_identityPeer;
|
||||
dst.m_nConnUserData = src.m_nConnUserData;
|
||||
dst.m_usecTimeReceived = src.m_usecTimeReceived;
|
||||
dst.m_nMessageNumber = src.m_nMessageNumber;
|
||||
dst.m_nChannel = src.m_nChannel;
|
||||
dst.m_nFlags = src.m_nFlags;
|
||||
dst.m_nUserData = src.m_nUserData;
|
||||
dst.m_idxLane = src.m_idxLane;
|
||||
}
|
||||
|
||||
static void receive_messages_utow_144( uint32_t count, u_SteamNetworkingMessage_t_144 **u_msgs,
|
||||
w_SteamNetworkingMessage_t_144 **w_msgs )
|
||||
{
|
||||
@ -15,16 +106,8 @@ static void receive_messages_utow_144( uint32_t count, u_SteamNetworkingMessage_
|
||||
{
|
||||
struct networking_message *message = networking_message::from_w( w_msgs[i] );
|
||||
auto *w_msg = &message->w_msg( **w_msgs );
|
||||
u_SteamNetworkingMessage_t_144 *u_msg = u_msgs[i];
|
||||
message->u_msg( **w_msgs ) = u_msg;
|
||||
|
||||
w_msg->m_cbSize = u_msg->m_cbSize;
|
||||
w_msg->m_conn = u_msg->m_conn;
|
||||
w_msg->m_sender = u_msg->m_sender;
|
||||
w_msg->m_nConnUserData = u_msg->m_nConnUserData;
|
||||
w_msg->m_usecTimeReceived = u_msg->m_usecTimeReceived;
|
||||
w_msg->m_nMessageNumber = u_msg->m_nMessageNumber;
|
||||
w_msg->m_nChannel = u_msg->m_nChannel;
|
||||
message->u_msg( **w_msgs ) = u_msgs[i];
|
||||
steam_networking_message_utow( *w_msg, *u_msgs[i] );
|
||||
}
|
||||
}
|
||||
|
||||
@ -99,18 +182,8 @@ static void receive_messages_utow_147( uint32_t count, u_SteamNetworkingMessage_
|
||||
{
|
||||
struct networking_message *message = networking_message::from_w( w_msgs[i] );
|
||||
auto *w_msg = &message->w_msg( **w_msgs );
|
||||
u_SteamNetworkingMessage_t_147 *u_msg = u_msgs[i];
|
||||
message->u_msg( **w_msgs ) = u_msg;
|
||||
|
||||
w_msg->m_cbSize = u_msg->m_cbSize;
|
||||
w_msg->m_conn = u_msg->m_conn;
|
||||
w_msg->m_identityPeer = u_msg->m_identityPeer;
|
||||
w_msg->m_nConnUserData = u_msg->m_nConnUserData;
|
||||
w_msg->m_usecTimeReceived = u_msg->m_usecTimeReceived;
|
||||
w_msg->m_nMessageNumber = u_msg->m_nMessageNumber;
|
||||
w_msg->m_nChannel = u_msg->m_nChannel;
|
||||
w_msg->m_nFlags = u_msg->m_nFlags;
|
||||
w_msg->m_nUserData = u_msg->m_nUserData;
|
||||
message->u_msg( **w_msgs ) = u_msgs[i];
|
||||
steam_networking_message_utow( *w_msg, *u_msgs[i] );
|
||||
}
|
||||
}
|
||||
|
||||
@ -132,12 +205,6 @@ NTSTATUS steamclient_networking_messages_receive_147( void *args )
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void U_CDECL u_SteamNetworkingMessage_t_147_FreeData( u_SteamNetworkingMessage_t_147 *msg )
|
||||
{
|
||||
free( msg->m_pData );
|
||||
msg->m_pData = NULL;
|
||||
}
|
||||
|
||||
static void send_messages_wtou_147( uint32_t count, w_SteamNetworkingMessage_t_147 *const *w_msgs,
|
||||
u_SteamNetworkingMessage_t_147 **u_msgs )
|
||||
{
|
||||
@ -147,25 +214,8 @@ static void send_messages_wtou_147( uint32_t count, w_SteamNetworkingMessage_t_1
|
||||
{
|
||||
struct networking_message *message = networking_message::from_w( w_msgs[i] );
|
||||
auto *w_msg = &message->w_msg( **w_msgs );
|
||||
u_SteamNetworkingMessage_t_147 *u_msg = message->u_msg( **w_msgs );
|
||||
|
||||
if (!u_msg->m_pData)
|
||||
{
|
||||
u_msg->m_pData = malloc( w_msg->m_cbSize );
|
||||
u_msg->m_pfnFreeData = u_SteamNetworkingMessage_t_147_FreeData;
|
||||
}
|
||||
|
||||
memcpy( u_msg->m_pData, w_msg->m_pData, w_msg->m_cbSize );
|
||||
u_msg->m_cbSize = w_msg->m_cbSize;
|
||||
u_msg->m_conn = w_msg->m_conn;
|
||||
u_msg->m_identityPeer = w_msg->m_identityPeer;
|
||||
u_msg->m_nConnUserData = w_msg->m_nConnUserData;
|
||||
u_msg->m_usecTimeReceived = w_msg->m_usecTimeReceived;
|
||||
u_msg->m_nMessageNumber = w_msg->m_nMessageNumber;
|
||||
u_msg->m_nChannel = w_msg->m_nChannel;
|
||||
u_msg->m_nFlags = w_msg->m_nFlags;
|
||||
u_msg->m_nUserData = w_msg->m_nUserData;
|
||||
|
||||
auto *u_msg = message->u_msg( **w_msgs );
|
||||
steam_networking_message_wtou( *u_msg, *w_msg );
|
||||
/* steamclient library takes ownership */
|
||||
message->u_msg( **w_msgs ) = NULL;
|
||||
u_msgs[i] = u_msg;
|
||||
@ -376,19 +426,8 @@ static void receive_messages_utow_153a( uint32_t count, u_SteamNetworkingMessage
|
||||
{
|
||||
struct networking_message *message = networking_message::from_w( w_msgs[i] );
|
||||
auto *w_msg = &message->w_msg( **w_msgs );
|
||||
u_SteamNetworkingMessage_t_153a *u_msg = u_msgs[i];
|
||||
message->u_msg( **w_msgs ) = u_msg;
|
||||
|
||||
w_msg->m_cbSize = u_msg->m_cbSize;
|
||||
w_msg->m_conn = u_msg->m_conn;
|
||||
w_msg->m_identityPeer = u_msg->m_identityPeer;
|
||||
w_msg->m_nConnUserData = u_msg->m_nConnUserData;
|
||||
w_msg->m_usecTimeReceived = u_msg->m_usecTimeReceived;
|
||||
w_msg->m_nMessageNumber = u_msg->m_nMessageNumber;
|
||||
w_msg->m_nChannel = u_msg->m_nChannel;
|
||||
w_msg->m_nFlags = u_msg->m_nFlags;
|
||||
w_msg->m_nUserData = u_msg->m_nUserData;
|
||||
w_msg->m_idxLane = u_msg->m_idxLane;
|
||||
message->u_msg( **w_msgs ) = u_msgs[i];
|
||||
steam_networking_message_utow( *w_msg, *u_msgs[i] );
|
||||
}
|
||||
}
|
||||
|
||||
@ -410,12 +449,6 @@ NTSTATUS steamclient_networking_messages_receive_153a( void *args )
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void U_CDECL u_SteamNetworkingMessage_t_153a_FreeData( u_SteamNetworkingMessage_t_153a *msg )
|
||||
{
|
||||
free( msg->m_pData );
|
||||
msg->m_pData = NULL;
|
||||
}
|
||||
|
||||
static void send_messages_wtou_153a( uint32_t count, w_SteamNetworkingMessage_t_153a *const *w_msgs,
|
||||
u_SteamNetworkingMessage_t_153a **u_msgs )
|
||||
{
|
||||
@ -425,26 +458,8 @@ static void send_messages_wtou_153a( uint32_t count, w_SteamNetworkingMessage_t_
|
||||
{
|
||||
struct networking_message *message = networking_message::from_w( w_msgs[i] );
|
||||
auto *w_msg = &message->w_msg( **w_msgs );
|
||||
u_SteamNetworkingMessage_t_153a *u_msg = message->u_msg( **w_msgs );
|
||||
|
||||
if (!u_msg->m_pData)
|
||||
{
|
||||
u_msg->m_pData = malloc( w_msg->m_cbSize );
|
||||
u_msg->m_pfnFreeData = u_SteamNetworkingMessage_t_153a_FreeData;
|
||||
}
|
||||
|
||||
memcpy( u_msg->m_pData, w_msg->m_pData, w_msg->m_cbSize );
|
||||
u_msg->m_cbSize = w_msg->m_cbSize;
|
||||
u_msg->m_conn = w_msg->m_conn;
|
||||
u_msg->m_identityPeer = w_msg->m_identityPeer;
|
||||
u_msg->m_nConnUserData = w_msg->m_nConnUserData;
|
||||
u_msg->m_usecTimeReceived = w_msg->m_usecTimeReceived;
|
||||
u_msg->m_nMessageNumber = w_msg->m_nMessageNumber;
|
||||
u_msg->m_nChannel = w_msg->m_nChannel;
|
||||
u_msg->m_nFlags = w_msg->m_nFlags;
|
||||
u_msg->m_nUserData = w_msg->m_nUserData;
|
||||
u_msg->m_idxLane = w_msg->m_idxLane;
|
||||
|
||||
auto *u_msg = message->u_msg( **w_msgs );
|
||||
steam_networking_message_wtou( *u_msg, *w_msg );
|
||||
/* steamclient library takes ownership */
|
||||
message->u_msg( **w_msgs ) = NULL;
|
||||
u_msgs[i] = u_msg;
|
||||
|
Loading…
x
Reference in New Issue
Block a user