projects
/
carveJwlIkooP6JGAAIwe30JlM.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
d00cf97
)
fix segfault
author
hgn
<hgodden00@gmail.com>
Sun, 1 Oct 2023 05:49:35 +0000
(06:49 +0100)
committer
hgn
<hgodden00@gmail.com>
Sun, 1 Oct 2023 05:49:35 +0000
(06:49 +0100)
gameserver.c
patch
|
blob
|
history
player_remote.c
patch
|
blob
|
history
diff --git
a/gameserver.c
b/gameserver.c
index b6ca2104a38324dcb1cce368e7e072801dd49be8..00c39f3013d9db8a3744281583206344d645e183 100644
(file)
--- a/
gameserver.c
+++ b/
gameserver.c
@@
-95,6
+95,7
@@
static void gameserver_player_join( int index ){
chs = vg_strncpy( client->item_player, item->uid, ADDON_UID_MAX,
k_strncpy_always_add_null );
item->type = k_addon_type_player;
chs = vg_strncpy( client->item_player, item->uid, ADDON_UID_MAX,
k_strncpy_always_add_null );
item->type = k_addon_type_player;
+ item->client = i;
size = sizeof(netmsg_playeritem) + chs + 1;
SteamAPI_ISteamNetworkingSockets_SendMessageToConnection(
hSteamNetworkingSockets, joiner->connection,
size = sizeof(netmsg_playeritem) + chs + 1;
SteamAPI_ISteamNetworkingSockets_SendMessageToConnection(
hSteamNetworkingSockets, joiner->connection,
@@
-103,6
+104,7
@@
static void gameserver_player_join( int index ){
chs = vg_strncpy( client->item_board, item->uid, ADDON_UID_MAX,
k_strncpy_always_add_null );
item->type = k_addon_type_board;
chs = vg_strncpy( client->item_board, item->uid, ADDON_UID_MAX,
k_strncpy_always_add_null );
item->type = k_addon_type_board;
+ item->client = i;
size = sizeof(netmsg_playeritem) + chs + 1;
SteamAPI_ISteamNetworkingSockets_SendMessageToConnection(
hSteamNetworkingSockets, joiner->connection,
size = sizeof(netmsg_playeritem) + chs + 1;
SteamAPI_ISteamNetworkingSockets_SendMessageToConnection(
hSteamNetworkingSockets, joiner->connection,
diff --git
a/player_remote.c
b/player_remote.c
index f81cdf50ec3259a256a655a61aa24a3f9e68febf..6b66656a078ef995b1f810ad3b9eca00c244af72 100644
(file)
--- a/
player_remote.c
+++ b/
player_remote.c
@@
-132,6
+132,11
@@
static void player_remote_rx_200_300( SteamNetworkingMessage_t *msg ){
netmsg_playeritem *item = msg->m_pData;
if( !packet_minsize( msg, sizeof(*item)+1 )) return;
netmsg_playeritem *item = msg->m_pData;
if( !packet_minsize( msg, sizeof(*item)+1 )) return;
+ if( item->client >= vg_list_size(netplayers.list) ){
+ vg_error( "inetmsg_playerframe: player index out of range\n" );
+ return;
+ }
+
vg_info( "Client #%u equiped: [%u] %s\n",
item->client, item->type, item->uid );
vg_info( "Client #%u equiped: [%u] %s\n",
item->client, item->type, item->uid );