Fixed two little bugs regarding server connecting client.

This commit is contained in:
Charles Lohr
2004-07-04 06:30:16 +00:00
parent ab7f6de1e3
commit f12a8ea8e6
2 changed files with 23 additions and 8 deletions
+12 -1
View File
@@ -14,6 +14,16 @@ void NetworkSyncManager::ReportSongOver() { }
void NetworkSyncManager::StartRequest() { } void NetworkSyncManager::StartRequest() { }
void NetworkSyncManager::DisplayStartupStatus() { } void NetworkSyncManager::DisplayStartupStatus() { }
void NetworkSyncManager::Update( float fDeltaTime ) { } void NetworkSyncManager::Update( float fDeltaTime ) { }
void NetworkSyncManager::WriteNT() { }
void NetworkSyncManager::Write1() { }
void NetworkSyncManager::Write2() { }
void NetworkSyncManager::Write4() { }
void NetworkSyncManager::ProcessInput() { }
void NetworkSyncManager::Read1() { }
void NetworkSyncManager::Read2() { }
void NetworkSyncManager::Read4() { }
void NetworkSyncManager::ReadNT() { }
#else #else
#include "ezsockets.h" #include "ezsockets.h"
@@ -294,7 +304,8 @@ void NetworkSyncManager::Update(float fDeltaTime)
void NetworkSyncManager::ProcessInput() void NetworkSyncManager::ProcessInput()
{ {
//If we're disconnected, just exit //If we're disconnected, just exit
if (NetPlayerClient->state!=NetPlayerClient->skCONNECTED) if ((NetPlayerClient->state!=NetPlayerClient->skCONNECTED) ||
NetPlayerClient->IsError())
return; return;
//load new data into buffer //load new data into buffer
+11 -7
View File
@@ -214,7 +214,8 @@ void EzSockets::update()
//Check for reading //Check for reading
while (CanRead() && !IsError()) while (CanRead() && !IsError())
pUpdateRead(); if (pUpdateRead()<1)
break;
if (CanWrite() && (outBuffer.length()>0)) if (CanWrite() && (outBuffer.length()>0))
pUpdateWrite(); pUpdateWrite();
@@ -259,16 +260,15 @@ int EzSockets::PeekData(char *data, unsigned int bytes)
while ((inBuffer.length()<bytes) && !IsError()) while ((inBuffer.length()<bytes) && !IsError())
pUpdateRead(); pUpdateRead();
else else
{
while (CanRead()&&!IsError()) while (CanRead()&&!IsError())
pUpdateRead(); if (pUpdateRead()<1)
} break;
int bytesRead = bytes; int bytesRead = bytes;
if (inBuffer.length()<bytes) if (inBuffer.length()<bytes)
bytesRead = inBuffer.length(); bytesRead = inBuffer.length();
memcpy(data,(inBuffer.substr(0,bytesRead)).c_str(),bytesRead); memcpy(data,inBuffer.c_str(),bytesRead);
return bytesRead; return bytesRead;
} }
@@ -301,10 +301,14 @@ int EzSockets::PeekPack(char * data, unsigned int max)
pUpdateRead(); pUpdateRead();
} }
if (IsError())
return (-1);
// LOG->Info("TTY:%d",inBuffer.length()
unsigned int size=0; unsigned int size=0;
PeekData((char*)&size,4); PeekData((char*)&size,4);
size = ntohl(size); size = ntohl(size);
// LOG->Info("TXA:%d",size);
while ((inBuffer.length()<(size+4)) && !IsError()) while ((inBuffer.length()<(size+4)) && !IsError())
{ {
pUpdateRead(); pUpdateRead();
@@ -325,7 +329,7 @@ int EzSockets::PeekPack(char * data, unsigned int max)
unsigned int size=0; unsigned int size=0;
PeekData((char*)&size,4); PeekData((char*)&size,4);
size = ntohl(size); size = ntohl(size);
if (inBuffer.length()<(size+4)) if ((inBuffer.length()<(size+4)) || (inBuffer.length()<=4))
return (-1); return (-1);
string tBuff(inBuffer.substr(4,size)); string tBuff(inBuffer.substr(4,size));