Uh.... bugfix.

This commit is contained in:
Bob
2009-11-16 20:37:52 +13:00
parent 43c993e53d
commit 7d34917abf

View File

@@ -164,22 +164,21 @@ namespace OpenRa.Game
throw new InvalidOperationException( "Wrong frame number at start of stream" ); throw new InvalidOperationException( "Wrong frame number at start of stream" );
var currentFrame = 0; var currentFrame = 0;
var first = reader.ReadUInt32(); var ret = new List<Order>();
while( true ) while( true )
{ {
var ret = new List<Order>(); var first = reader.ReadUInt32();
while( true ) if( first == currentFrame + 1 )
{ {
if( first == currentFrame + 1 ) lock( orders )
{ orders[ currentFrame ] = ret;
lock( orders ) ret = new List<Order>();
orders[ currentFrame ] = ret; ++currentFrame;
ret = new List<Order>();
++currentFrame;
break;
}
ret.Add( Order.Deserialize( reader, first ) );
} }
else if( first < 0x80000000 )
throw new InvalidOperationException( "Attempted time-travel in network thread" );
else
ret.Add( Order.Deserialize( reader, first ) );
} }
} ) { IsBackground = true }.Start(); } ) { IsBackground = true }.Start();