anchor.diff:                if IsHost then
                 begin
                   M.Read(tmpCardinal);
  -                Color := tmpCardinal;
                   //The player list could have changed since the joiner sent this request (over slow connection)
  -                if fNetPlayers.ColorAvailable(Color)
  -                and ((fSelectGameKind <> ngkSave) or not SaveInfo.IsValid or not SaveInfo.GameInfo.ColorUsed(Color)) then
  +                if fNetPlayers.ColorAvailable(tmpCardinal)
  +                and ((fSelectGameKind <> ngkSave) or not SaveInfo.IsValid or not SaveInfo.GameInfo.ColorUsed(tmpCardinal)) then
                   begin
  -                  fNetPlayers[fNetPlayers.ServerToLocal(aSenderIndex)].FlagColor := Color;
  +                  fNetPlayers[fNetPlayers.ServerToLocal(aSenderIndex)].FlagColor := tmpCardinal;
                     SendPlayerListAndRefreshPlayersSetup;
                   end
                   else //Quietly refuse
  
positive.code: end;
  
  
  procedure TKMNetworking.PacketSend(aRecipient: TKMNetHandleIndex; aKind: TKMessageKind; aParam: Integer);
  var
    M: TKMemoryStreamBinary;
  
negative.code:   tmpStringA: AnsiString;
    tmpStringW, replyStringW: UnicodeString;
    tmpChatMode: TKMChatMode;
    I,LocID,TeamID,PlayerIndex: Integer;
    ChatSound: TKMChatSound;
  begin
    Assert(aLength >= 1, 'Unexpectedly short message'); //Kind, Message
  