From f012e15c953f7d6a24f9d063123b41739060782f Mon Sep 17 00:00:00 2001 From: pasky Date: Mon, 22 Nov 2004 22:51:19 +0000 Subject: [PATCH] (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. --- newgrf.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/newgrf.c b/newgrf.c index 3ce32bae7c..52ca90575d 100644 --- a/newgrf.c +++ b/newgrf.c @@ -1989,6 +1989,14 @@ void InitNewGRFFile(const char *filename, int sprite_offset) { 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)