# HG changeset patch # User pasky # Date 1101163879 0 # Node ID a419f732c8ef64875796a38c4a9b704a00d1b208 # Parent 3599fda8fecf2aeaaf385e68320b7b18ebd3b2e6 (svn r771) Do not give a file new {struct GRFFile} if it was already loaded once. Eliminates those double entries in the newgrf manager and also some possible memory leaks. diff -r 3599fda8fecf -r a419f732c8ef newgrf.c --- a/newgrf.c Mon Nov 22 22:22:03 2004 +0000 +++ b/newgrf.c Mon Nov 22 22:51:19 2004 +0000 @@ -1989,6 +1989,14 @@ { struct GRFFile *newfile; + newfile = GetFileByFilename(filename); + if (newfile) { + /* We already loaded it once. */ + newfile->sprite_offset = sprite_offset; + _cur_grffile = newfile; + return; + } + newfile = calloc(1, sizeof(struct GRFFile)); if (newfile == NULL)