aboutsummaryrefslogtreecommitdiff
path: root/src/server/shared/Packets/ByteBuffer.h
diff options
context:
space:
mode:
authorMichael <michaelneubert1988@gmail.com>2014-05-25 21:52:27 +0200
committerMichael <michaelneubert1988@gmail.com>2014-05-25 21:52:27 +0200
commit15efe08a60d3ccb277dde03abc6cce562ad0b44b (patch)
tree9c2a48c3e55a000205ed0f3159d0684f29a0d994 /src/server/shared/Packets/ByteBuffer.h
parent49a17c6282fac3d2636e3db740b1a6960fb387ba (diff)
parentc06dc7d37aa8c795ff505550a7bc388d2a66ecac (diff)
Merge branch 'master' of github.com:TrinityCore/TrinityCore into 4.3.4
Conflicts: src/server/game/Entities/Item/Item.cpp src/server/game/Entities/Pet/Pet.cpp src/server/game/Entities/Player/Player.cpp src/server/game/Entities/Player/Player.h src/server/game/Handlers/MiscHandler.cpp src/server/game/Miscellaneous/SharedDefines.h src/server/game/Reputation/ReputationMgr.cpp src/server/game/Server/Protocol/Opcodes.h src/server/game/Server/WorldSession.cpp src/server/game/Server/WorldSession.h src/server/game/Spells/SpellEffects.cpp src/server/game/Weather/Weather.cpp src/server/game/Weather/WeatherMgr.cpp src/server/scripts/EasternKingdoms/ScarletEnclave/zone_the_scarlet_enclave.cpp src/server/scripts/Spells/spell_hunter.cpp
Diffstat (limited to 'src/server/shared/Packets/ByteBuffer.h')
-rw-r--r--src/server/shared/Packets/ByteBuffer.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/server/shared/Packets/ByteBuffer.h b/src/server/shared/Packets/ByteBuffer.h
index e1ff495a50b..2638224acff 100644
--- a/src/server/shared/Packets/ByteBuffer.h
+++ b/src/server/shared/Packets/ByteBuffer.h
@@ -31,6 +31,7 @@
#include <vector>
#include <cstring>
#include <time.h>
+#include <math.h>
// Root of ByteBuffer exception hierarchy
class ByteBufferException : public std::exception
@@ -340,12 +341,16 @@ class ByteBuffer
ByteBuffer &operator>>(float &value)
{
value = read<float>();
+ if (!std::isfinite(value))
+ throw ByteBufferException();
return *this;
}
ByteBuffer &operator>>(double &value)
{
value = read<double>();
+ if (!std::isfinite(value))
+ throw ByteBufferException();
return *this;
}