Changeset 8184 in orxonox.OLD for branches/network/src/lib/network/udp_socket.cc
- Timestamp:
- Jun 7, 2006, 1:16:12 PM (18 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/network/src/lib/network/udp_socket.cc
r7954 r8184 81 81 UdpSocket::~UdpSocket( ) 82 82 { 83 this->disconnectServer(); 84 83 85 if ( serverSocket ) 84 86 serverSocket->removeUser( userId ); 85 86 disconnectServer(); 87 87 88 88 if ( this->packet ) 89 89 SDLNet_FreePacket( this->packet ); … … 128 128 return; 129 129 } 130 130 } 131 132 /** 133 * disconnect from server 134 */ 135 void UdpSocket::disconnectServer( ) 136 { 137 PRINTF(0)("disconnect from server\n"); 131 138 writePacket( NULL, 0 ); 132 }133 134 /**135 * disconnect from server136 */137 void UdpSocket::disconnectServer( )138 {139 139 SDLNet_UDP_Unbind( socket, -1 ); 140 140 SDLNet_UDP_Close( socket ); … … 196 196 NetworkPacket networkPacket = serverSocket->getPacket( this->userId ); 197 197 198 if ( networkPacket.length == -1 ) 199 { 200 this->disconnectServer(); 201 return 0; 202 } 203 198 204 if ( networkPacket.length > 0 ) 199 205 { … … 218 224 assert( packet->len <= maxLength ); 219 225 226 if ( packet->len == 0 ) 227 { 228 this->disconnectServer(); 229 return 0; 230 } 231 220 232 memcpy( data, packet->data, packet->len ); 221 233 return packet->len;
Note: See TracChangeset
for help on using the changeset viewer.