Possibly fix bug.
This commit is contained in:
@@ -295,17 +295,15 @@ string Transport<MyState, RemoteState>::get_remote_diff( void )
|
|||||||
|
|
||||||
string ret( received_states.back().state.diff_from( last_receiver_state, 1 ) );
|
string ret( received_states.back().state.diff_from( last_receiver_state, 1 ) );
|
||||||
|
|
||||||
last_receiver_state = received_states.back().state;
|
|
||||||
|
|
||||||
MyState * const oldest_receiver_state = &received_states.front().state;
|
MyState * const oldest_receiver_state = &received_states.front().state;
|
||||||
|
|
||||||
last_receiver_state.subtract( oldest_receiver_state );
|
|
||||||
|
|
||||||
for ( typename list< TimestampedState<RemoteState> >::reverse_iterator i = received_states.rbegin();
|
for ( typename list< TimestampedState<RemoteState> >::reverse_iterator i = received_states.rbegin();
|
||||||
i != received_states.rend();
|
i != received_states.rend();
|
||||||
i++ ) {
|
i++ ) {
|
||||||
i->state.subtract( oldest_receiver_state );
|
i->state.subtract( oldest_receiver_state );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
last_receiver_state = received_states.back().state;
|
||||||
|
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -52,7 +52,7 @@ int main( int argc, char *argv[] )
|
|||||||
n->recv();
|
n->recv();
|
||||||
|
|
||||||
if ( n->get_remote_state_num() != last_num ) {
|
if ( n->get_remote_state_num() != last_num ) {
|
||||||
fprintf( stderr, "%s\n", n->get_remote_diff().c_str() );
|
fprintf( stderr, "%s", n->get_remote_diff().c_str() );
|
||||||
last_num = n->get_remote_state_num();
|
last_num = n->get_remote_state_num();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user