diff -r 8b48c27201af -r 3d07fd84c39d hedgewars/uTeams.pas --- a/hedgewars/uTeams.pas Fri Sep 27 00:54:18 2013 +0400 +++ b/hedgewars/uTeams.pas Fri Sep 27 12:58:21 2013 +0400 @@ -43,7 +43,7 @@ implementation uses uLocale, uAmmos, uChat, uVariables, uUtils, uIO, uCaptions, uCommands, uDebug, - uGearsUtils, uGearsList, uVisualGearsList + uGearsUtils, uGearsList, uVisualGearsList, uTextures {$IFDEF USE_TOUCH_INTERFACE}, uTouch{$ENDIF}; var MaxTeamHealth: LongInt; @@ -714,8 +714,26 @@ for i:= 0 to Pred(TeamsCount) do begin for h:= 0 to cMaxHHIndex do - if TeamsArray[i]^.Hedgehogs[h].GearHidden <> nil then - Dispose(TeamsArray[i]^.Hedgehogs[h].GearHidden); + with TeamsArray[i]^.Hedgehogs[h] do + begin + if GearHidden <> nil then + Dispose(GearHidden); + + FreeTexture(NameTagTex); + FreeTexture(HealthTagTex); + FreeTexture(HatTex); + end; + + with TeamsArray[i]^ do + begin + FreeTexture(NameTagTex); + FreeTexture(CrosshairTex); + FreeTexture(GraveTex); + FreeTexture(HealthTex); + FreeTexture(AIKillsTex); + FreeTexture(FlagTex); + end; + Dispose(TeamsArray[i]); end; for i:= 0 to Pred(ClansCount) do