From 184aae8cb1fb072b40d63f69c569d92ad7ed2eef Mon Sep 17 00:00:00 2001 From: Eugenio Favalli Date: Fri, 28 Apr 2006 12:08:06 +0000 Subject: Merged enet_switch changes r2268:2309 into the trunk. --- src/messagein.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'src/messagein.cpp') diff --git a/src/messagein.cpp b/src/messagein.cpp index 88e673d..c1736bb 100644 --- a/src/messagein.cpp +++ b/src/messagein.cpp @@ -23,9 +23,10 @@ #include "messagein.h" -#include #include +#include + #include "packet.h" MessageIn::MessageIn(Packet *packet): @@ -60,12 +61,14 @@ char MessageIn::readByte() short MessageIn::readShort() { + short value = -1; + if (mPacket) { if ( (mPos + sizeof(short)) <= mPacket->length ) { + value = ENET_NET_TO_HOST_16(*(short *)(mPacket->data + mPos)); mPos += sizeof(short); - return (short) SDLNet_Read16(&(mPacket->data[mPos - sizeof(short)])); } else { @@ -73,17 +76,19 @@ short MessageIn::readShort() // that requires less length. } } - return -1; + return value; } long MessageIn::readLong() { + long value = -1; + if (mPacket) { if ( (mPos + sizeof(long)) <= mPacket->length ) { + value = ENET_NET_TO_HOST_32(*(long *)(mPacket->data + mPos)); mPos += sizeof(long); - return (long) SDLNet_Read32(&(mPacket->data[mPos - sizeof(long)])); } else { @@ -91,7 +96,7 @@ long MessageIn::readLong() // that requires less length. } } - return -1; + return value; } std::string MessageIn::readString(int length) -- cgit