This should have been added before. add log spew if this ever happens. We should hopefully identify the various circumstances and make sure it is all cleaned up so the list becomes unnecessary.
--- a/hedgewars/uTextures.pas Wed Nov 16 15:16:17 2011 -0500
+++ b/hedgewars/uTextures.pas Wed Nov 16 16:36:17 2011 -0500
@@ -226,7 +226,12 @@
procedure freeModule;
begin
- while TextureList <> nil do FreeTexture(TextureList);
+ if TextureList <> nil then AddFileLog('FIXME FIXME FIXME. App shutdown without full cleanup of texture list.');
+ while TextureList <> nil do
+ begin
+ AddFileLog('Texture not freed: width='+inttostr(LongInt(TextureList^.w))+' height='+inttostr(LongInt(TextureList^.h))+' priority='+inttostr(round(TextureList^.priority*1000)));
+ FreeTexture(TextureList);
+ end
end;
end.