diff options
author | Andrei Karas <akaras@inbox.ru> | 2013-10-18 16:44:28 +0300 |
---|---|---|
committer | Andrei Karas <akaras@inbox.ru> | 2013-10-19 15:12:20 +0300 |
commit | 008bf570587fb34382cca58e8d3fd909c9a621f8 (patch) | |
tree | 379cdc38fd158cbd661ba51425d9c22b1d24aba8 | |
parent | 41238c8f7ab88b2f3ef51a5e1ead58d3ba505c5b (diff) | |
download | mv-008bf570587fb34382cca58e8d3fd909c9a621f8.tar.gz mv-008bf570587fb34382cca58e8d3fd909c9a621f8.tar.bz2 mv-008bf570587fb34382cca58e8d3fd909c9a621f8.tar.xz mv-008bf570587fb34382cca58e8d3fd909c9a621f8.zip |
move virtual member calls from messagein constuctor into postInit.
-rw-r--r-- | src/net/eathena/messagein.cpp | 4 | ||||
-rw-r--r-- | src/net/eathena/messagein.h | 2 | ||||
-rw-r--r-- | src/net/eathena/network.cpp | 1 | ||||
-rw-r--r-- | src/net/tmwa/messagein.cpp | 4 | ||||
-rw-r--r-- | src/net/tmwa/messagein.h | 2 | ||||
-rw-r--r-- | src/net/tmwa/network.cpp | 1 |
6 files changed, 14 insertions, 0 deletions
diff --git a/src/net/eathena/messagein.cpp b/src/net/eathena/messagein.cpp index 221a782bb..bd24d8d04 100644 --- a/src/net/eathena/messagein.cpp +++ b/src/net/eathena/messagein.cpp @@ -38,6 +38,10 @@ namespace EAthena MessageIn::MessageIn(const char *const data, const unsigned int length) : Net::MessageIn(data, length) { +} + +void MessageIn::postInit() +{ // Read the message ID mId = readInt16(); } diff --git a/src/net/eathena/messagein.h b/src/net/eathena/messagein.h index a73e4c93b..377ab7b33 100644 --- a/src/net/eathena/messagein.h +++ b/src/net/eathena/messagein.h @@ -45,6 +45,8 @@ class MessageIn final : public Net::MessageIn A_DELETE_COPY(MessageIn) + void postInit(); + int16_t readInt16(); /**< Reads a short. */ int32_t readInt32(); /**< Reads a long. */ }; diff --git a/src/net/eathena/network.cpp b/src/net/eathena/network.cpp index 481a945ba..9fde34fd0 100644 --- a/src/net/eathena/network.cpp +++ b/src/net/eathena/network.cpp @@ -183,6 +183,7 @@ void Network::dispatchMessages() len = readWord(2); MessageIn msg(mInBuffer, len); + msg.postInit(); SDL_mutexV(mMutexIn); if (len == 0) diff --git a/src/net/tmwa/messagein.cpp b/src/net/tmwa/messagein.cpp index dac641414..4d8b334f3 100644 --- a/src/net/tmwa/messagein.cpp +++ b/src/net/tmwa/messagein.cpp @@ -38,6 +38,10 @@ namespace TmwAthena MessageIn::MessageIn(const char *const data, const unsigned int length) : Net::MessageIn(data, length) { +} + +void MessageIn::postInit() +{ // Read the message ID mId = readInt16(); } diff --git a/src/net/tmwa/messagein.h b/src/net/tmwa/messagein.h index a17260177..50afff011 100644 --- a/src/net/tmwa/messagein.h +++ b/src/net/tmwa/messagein.h @@ -45,6 +45,8 @@ class MessageIn final : public Net::MessageIn A_DELETE_COPY(MessageIn) + void postInit(); + int16_t readInt16(); /**< Reads a short. */ int32_t readInt32(); /**< Reads a long. */ }; diff --git a/src/net/tmwa/network.cpp b/src/net/tmwa/network.cpp index 515b66c89..8fe89ac52 100644 --- a/src/net/tmwa/network.cpp +++ b/src/net/tmwa/network.cpp @@ -156,6 +156,7 @@ void Network::dispatchMessages() len = readWord(2); MessageIn msg(mInBuffer, len); + msg.postInit(); SDL_mutexV(mMutexIn); BLOCK_END("Network::dispatchMessages 2") BLOCK_START("Network::dispatchMessages 3") |