@ -445,6 +445,7 @@ DEF_SERVER_SEND_COMMAND_PARAM(PACKET_SERVER_COMMAND)(ClientState *cs, CommandPac
//
int i ;
char * dparam_char ;
Packet * p = NetworkSend_Init ( PACKET_SERVER_COMMAND ) ;
NetworkSend_uint8 ( p , cp - > player ) ;
@ -452,8 +453,13 @@ DEF_SERVER_SEND_COMMAND_PARAM(PACKET_SERVER_COMMAND)(ClientState *cs, CommandPac
NetworkSend_uint32 ( p , cp - > p1 ) ;
NetworkSend_uint32 ( p , cp - > p2 ) ;
NetworkSend_uint32 ( p , cp - > tile ) ;
for ( i = 0 ; i < lengthof ( cp - > dp ) ; i + + ) {
NetworkSend_uint32 ( p , cp - > dp [ i ] ) ;
/* We are going to send them byte by byte, because dparam is misused
for chars ( if it is used ) , and else we have a BigEndian / LittleEndian
problem . . we should fix the misuse of dparam . . . - - TrueLight */
dparam_char = ( char * ) & cp - > dp [ 0 ] ;
for ( i = 0 ; i < lengthof ( cp - > dp ) * 4 ; i + + ) {
NetworkSend_uint8 ( p , * dparam_char ) ;
dparam_char + + ;
}
NetworkSend_uint8 ( p , cp - > callback ) ;
NetworkSend_uint32 ( p , cp - > frame ) ;
@ -732,6 +738,7 @@ DEF_SERVER_RECEIVE_COMMAND(PACKET_CLIENT_COMMAND)
byte callback ;
ClientState * new_cs ;
NetworkClientInfo * ci ;
char * dparam_char ;
CommandPacket * cp = malloc ( sizeof ( CommandPacket ) ) ;
@ -747,8 +754,14 @@ DEF_SERVER_RECEIVE_COMMAND(PACKET_CLIENT_COMMAND)
cp - > p1 = NetworkRecv_uint32 ( p ) ;
cp - > p2 = NetworkRecv_uint32 ( p ) ;
cp - > tile = NetworkRecv_uint32 ( p ) ;
for ( i = 0 ; i < lengthof ( cp - > dp ) ; i + + )
cp - > dp [ i ] = NetworkRecv_uint32 ( p ) ;
/* We are going to send them byte by byte, because dparam is misused
for chars ( if it is used ) , and else we have a BigEndian / LittleEndian
problem . . we should fix the misuse of dparam . . . - - TrueLight */
dparam_char = ( char * ) & cp - > dp [ 0 ] ;
for ( i = 0 ; i < lengthof ( cp - > dp ) * 4 ; i + + ) {
* dparam_char = NetworkRecv_uint8 ( p ) ;
dparam_char + + ;
}
callback = NetworkRecv_uint8 ( p ) ;