From debfc88862d4476872c77fb512de2aeb1c757ca2 Mon Sep 17 00:00:00 2001 From: peter1138 Date: Wed, 3 May 2006 20:42:45 +0000 Subject: (svn r4720) - Newstations: instead of literally copying sprite layout data, just copy the pointer to the existing data. --- newgrf.c | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/newgrf.c b/newgrf.c index 62b0e6464..b617597f2 100644 --- a/newgrf.c +++ b/newgrf.c @@ -847,31 +847,9 @@ static bool StationChangeInfo(uint stid, int numinfo, int prop, byte **bufp, int StationSpec *statspec = &_cur_grffile->stations[stid + i]; byte srcid = grf_load_byte(&buf); const StationSpec *srcstatspec = &_cur_grffile->stations[srcid]; - uint t; statspec->tiles = srcstatspec->tiles; - statspec->renderdata = calloc(statspec->tiles, sizeof(*statspec->renderdata)); - for (t = 0; t < statspec->tiles; t++) { - DrawTileSprites *dts = &statspec->renderdata[t]; - const DrawTileSprites *sdts = &srcstatspec->renderdata[t]; - DrawTileSeqStruct const *sdtss = sdts->seq; - int seq_count = 0; - - dts->seq = NULL; - dts->ground_sprite = sdts->ground_sprite; - if (dts->ground_sprite == 0) continue; - - while (true) { - DrawTileSeqStruct *dtss; - - // no relative bounding box support - dts->seq = realloc((void*)dts->seq, ++seq_count * sizeof(DrawTileSeqStruct)); - dtss = (DrawTileSeqStruct*) &dts->seq[seq_count - 1]; - *dtss = *sdtss; - if ((byte) dtss->delta_x == 0x80) break; - sdtss++; - } - } + statspec->renderdata = srcstatspec->renderdata; } break; -- cgit v1.2.3-70-g09d2