From 58257c7cdc0dad9bde79921d7d0f5e211c7bb205 Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Sat, 2 Oct 2021 20:30:47 +0200 Subject: [PATCH] Remove unessesery null checks in multi_msg_add --- Source/msg.cpp | 33 +++++++++++++++++---------------- Source/multi.cpp | 7 ------- Source/multi.h | 1 - 3 files changed, 17 insertions(+), 24 deletions(-) diff --git a/Source/msg.cpp b/Source/msg.cpp index 3754f1372..7a0d54db1 100644 --- a/Source/msg.cpp +++ b/Source/msg.cpp @@ -29,6 +29,7 @@ #include "storm/storm.h" #include "sync.h" #include "town.h" +#include "tmsg.h" #include "trigs.h" #include "utils/language.h" @@ -559,11 +560,11 @@ void PlayerMessageFormat(const char *pszFmt, ...) va_end(va); } -void NetSendCmdGItem2(bool usonly, _cmd_id bCmd, BYTE mast, BYTE pnum, const TCmdGItem *p) +void NetSendCmdGItem2(bool usonly, _cmd_id bCmd, uint8_t mast, uint8_t pnum, const TCmdGItem &item) { TCmdGItem cmd; - memcpy(&cmd, p, sizeof(cmd)); + memcpy(&cmd, &item, sizeof(cmd)); cmd.bPnum = pnum; cmd.bCmd = bCmd; cmd.bMaster = mast; @@ -581,14 +582,14 @@ void NetSendCmdGItem2(bool usonly, _cmd_id bCmd, BYTE mast, BYTE pnum, const TCm return; } - multi_msg_add((byte *)&cmd.bCmd, sizeof(cmd)); + tmsg_add((byte *)&cmd, sizeof(cmd)); } -bool NetSendCmdReq2(_cmd_id bCmd, BYTE mast, BYTE pnum, const TCmdGItem *p) +bool NetSendCmdReq2(_cmd_id bCmd, uint8_t mast, uint8_t pnum, const TCmdGItem &item) { TCmdGItem cmd; - memcpy(&cmd, p, sizeof(cmd)); + memcpy(&cmd, &item, sizeof(cmd)); cmd.bCmd = bCmd; cmd.bPnum = pnum; cmd.bMaster = mast; @@ -599,16 +600,16 @@ bool NetSendCmdReq2(_cmd_id bCmd, BYTE mast, BYTE pnum, const TCmdGItem *p) else if (ticks - cmd.dwTime > 5000) return false; - multi_msg_add((byte *)&cmd.bCmd, sizeof(cmd)); + tmsg_add((byte *)&cmd, sizeof(cmd)); return true; } -void NetSendCmdExtra(const TCmdGItem *p) +void NetSendCmdExtra(const TCmdGItem &item) { TCmdGItem cmd; - memcpy(&cmd, p, sizeof(cmd)); + memcpy(&cmd, &item, sizeof(cmd)); cmd.dwTime = 0; cmd.bCmd = CMD_ITEMEXTRA; NetSendHiPri(MyPlayerId, (byte *)&cmd, sizeof(cmd)); @@ -698,14 +699,14 @@ DWORD OnRequestGetItem(const TCmd *pCmd, Player &player) if (GetItemRecord(p->dwSeed, p->wCI, p->wIndx)) { int ii = FindGetItem(p->wIndx, p->wCI, p->dwSeed); if (ii != -1) { - NetSendCmdGItem2(false, CMD_GETITEM, MyPlayerId, p->bPnum, p); + NetSendCmdGItem2(false, CMD_GETITEM, MyPlayerId, p->bPnum, *p); if (p->bPnum != MyPlayerId) SyncGetItem({ p->x, p->y }, p->wIndx, p->wCI, p->dwSeed); else InvGetItem(MyPlayerId, &Items[ii], ii); SetItemRecord(p->dwSeed, p->wCI, p->wIndx); - } else if (!NetSendCmdReq2(CMD_REQUESTGITEM, MyPlayerId, p->bPnum, p)) { - NetSendCmdExtra(p); + } else if (!NetSendCmdReq2(CMD_REQUESTGITEM, MyPlayerId, p->bPnum, *p)) { + NetSendCmdExtra(*p); } } } @@ -737,7 +738,7 @@ DWORD OnGetItem(const TCmd *pCmd, int pnum) } } } else { - NetSendCmdGItem2(true, CMD_GETITEM, p->bMaster, p->bPnum, p); + NetSendCmdGItem2(true, CMD_GETITEM, p->bMaster, p->bPnum, *p); } } @@ -765,14 +766,14 @@ DWORD OnRequestAutoGetItem(const TCmd *pCmd, Player &player) if (GetItemRecord(p->dwSeed, p->wCI, p->wIndx)) { int ii = FindGetItem(p->wIndx, p->wCI, p->dwSeed); if (ii != -1) { - NetSendCmdGItem2(false, CMD_AGETITEM, MyPlayerId, p->bPnum, p); + NetSendCmdGItem2(false, CMD_AGETITEM, MyPlayerId, p->bPnum, *p); if (p->bPnum != MyPlayerId) SyncGetItem({ p->x, p->y }, p->wIndx, p->wCI, p->dwSeed); else AutoGetItem(MyPlayerId, &Items[p->bCursitem], p->bCursitem); SetItemRecord(p->dwSeed, p->wCI, p->wIndx); - } else if (!NetSendCmdReq2(CMD_REQUESTAGITEM, MyPlayerId, p->bPnum, p)) { - NetSendCmdExtra(p); + } else if (!NetSendCmdReq2(CMD_REQUESTAGITEM, MyPlayerId, p->bPnum, *p)) { + NetSendCmdExtra(*p); } } } @@ -804,7 +805,7 @@ DWORD OnAutoGetItem(const TCmd *pCmd, int pnum) } } } else { - NetSendCmdGItem2(true, CMD_AGETITEM, p->bMaster, p->bPnum, p); + NetSendCmdGItem2(true, CMD_AGETITEM, p->bMaster, p->bPnum, *p); } } diff --git a/Source/multi.cpp b/Source/multi.cpp index 063943f13..da92c2a7f 100644 --- a/Source/multi.cpp +++ b/Source/multi.cpp @@ -465,13 +465,6 @@ bool InitMulti(GameData *gameData) } // namespace -void multi_msg_add(const byte *data, size_t size) -{ - if (data != nullptr && size != 0) { - tmsg_add(data, size); - } -} - void NetSendLoPri(int playerId, const byte *data, size_t size) { if (data != nullptr && size != 0) { diff --git a/Source/multi.h b/Source/multi.h index 9218eed7b..9e21508e2 100644 --- a/Source/multi.h +++ b/Source/multi.h @@ -48,7 +48,6 @@ extern char szPlayerName[128]; extern BYTE gbDeltaSender; extern uint32_t player_state[MAX_PLRS]; -void multi_msg_add(const byte *data, size_t size); void NetSendLoPri(int playerId, const byte *data, size_t size); void NetSendHiPri(int playerId, const byte *data, size_t size); void multi_send_msg_packet(uint32_t pmask, const byte *data, size_t size);