Changeset - r17682:2934b24b55d1
[Not reviewed]
master
0 1 0
frosch - 13 years ago 2011-05-17 20:11:19
frosch@openttd.org
(svn r22472) -Fix: When a NewGRF assigned station properties 09 and/or 0A multiple times, the previously allocated sprite layouts were not freed.
1 file changed with 4 insertions and 0 deletions:
0 comments (0 inline, 0 general)
src/newgrf.cpp
Show inline comments
 
@@ -1221,6 +1221,8 @@ static ChangeInfoResult StationChangeInf
 
			}
 

	
 
			case 0x09: // Define sprite layout
 
				delete[] statspec->renderdata; // delete earlier loaded stuff
 

	
 
				statspec->tiles = buf->ReadExtendedByte();
 
				statspec->renderdata = new NewGRFSpriteLayout[statspec->tiles];
 

	
 
@@ -1281,6 +1283,8 @@ static ChangeInfoResult StationChangeInf
 
					continue;
 
				}
 

	
 
				delete[] statspec->renderdata; // delete earlier loaded stuff
 

	
 
				statspec->tiles = srcstatspec->tiles;
 
				statspec->renderdata = new NewGRFSpriteLayout[statspec->tiles];
 
				for (uint t = 0; t < statspec->tiles; t++) {
0 comments (0 inline, 0 general)