diff options
author | fcolin | 2007-02-01 12:53:56 +0000 |
---|---|---|
committer | fcolin | 2007-02-01 12:53:56 +0000 |
commit | 98630f19f487c261bd68defc285c8216c0f7718c (patch) | |
tree | a195cac36d631ef39dd443329db47f008697e0ee /Ivy/BufferedSocket.cxx | |
parent | 38c6ccda650d81aca69dafa3d033bfeb8160e94c (diff) | |
download | ivy-cplusplus-98630f19f487c261bd68defc285c8216c0f7718c.zip ivy-cplusplus-98630f19f487c261bd68defc285c8216c0f7718c.tar.gz ivy-cplusplus-98630f19f487c261bd68defc285c8216c0f7718c.tar.bz2 ivy-cplusplus-98630f19f487c261bd68defc285c8216c0f7718c.tar.xz |
Utilisateur : Fcolin Date : 19/04/06 Heure : 15:07 Archivé dans $/Bus/Ivy Commentaire: (vss 19)
Diffstat (limited to 'Ivy/BufferedSocket.cxx')
-rw-r--r-- | Ivy/BufferedSocket.cxx | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/Ivy/BufferedSocket.cxx b/Ivy/BufferedSocket.cxx index 3335e09..1a11c56 100644 --- a/Ivy/BufferedSocket.cxx +++ b/Ivy/BufferedSocket.cxx @@ -36,6 +36,7 @@ void CBufferedSocket::OnReceive(int nErrorCode) char *ptr;
size_t nb_to_read = 0;
size_t nb;
+ char *tmp_buf;
SOCKADDR addr;
size_t len = sizeof( addr );
@@ -45,12 +46,13 @@ void CBufferedSocket::OnReceive(int nErrorCode) if( nb_to_read == 0 )
{
buffer_size *= 2; /* twice old size */
- buffer = (char*)realloc( buffer, buffer_size );
- if (!buffer )
+ tmp_buf = (char*)realloc( buffer, buffer_size );
+ if (!tmp_buf )
{
TRACE("HandleSocket Buffer Memory Alloc Error\n");
exit(0);
}
+ buffer = tmp_buf;
TRACE( "Buffer Limit reached realloc new size %ld\n", buffer_size );
nb_to_read = buffer_size - (current_ptr - buffer );
}
|