summaryrefslogtreecommitdiff
path: root/sprite.c
diff options
context:
space:
mode:
authorpeter1138 <peter1138@openttd.org>2005-10-14 20:10:12 +0000
committerpeter1138 <peter1138@openttd.org>2005-10-14 20:10:12 +0000
commit5c3625b88fba7d83173851f177c14309e3d54989 (patch)
treec81de7dc93f3edb134f00c849f31546908bac26e /sprite.c
parentf97d1274bc13b976aeec0d346f6dc06f3b4072c6 (diff)
downloadopenttd-5c3625b88fba7d83173851f177c14309e3d54989.tar.xz
(svn r3044) -NewGRF, Codechange: Improve handling of non-existent sprite sets.
Diffstat (limited to 'sprite.c')
-rw-r--r--sprite.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/sprite.c b/sprite.c
index 28c430f32..2d76b7527 100644
--- a/sprite.c
+++ b/sprite.c
@@ -127,10 +127,10 @@ void UnloadSpriteGroup(SpriteGroup **group_ptr)
{
RealSpriteGroup *rsg = &group->g.real;
for (i = 0; i < rsg->loading_count; i++) {
- UnloadSpriteGroup(&rsg->loading[i]);
+ if (rsg->loading[i] != NULL) UnloadSpriteGroup(&rsg->loading[i]);
}
for (i = 0; i < rsg->loaded_count; i++) {
- UnloadSpriteGroup(&rsg->loaded[i]);
+ if (rsg->loaded[i] != NULL) UnloadSpriteGroup(&rsg->loaded[i]);
}
free(group);
return;
@@ -140,9 +140,9 @@ void UnloadSpriteGroup(SpriteGroup **group_ptr)
{
DeterministicSpriteGroup *dsg = &group->g.determ;
for (i = 0; i < group->g.determ.num_ranges; i++) {
- UnloadSpriteGroup(&dsg->ranges[i].group);
+ if (dsg->ranges[i].group != NULL) UnloadSpriteGroup(&dsg->ranges[i].group);
}
- UnloadSpriteGroup(&dsg->default_group);
+ if (dsg->default_group != NULL) UnloadSpriteGroup(&dsg->default_group);
free(group->g.determ.ranges);
free(group);
return;
@@ -151,7 +151,7 @@ void UnloadSpriteGroup(SpriteGroup **group_ptr)
case SGT_RANDOMIZED:
{
for (i = 0; i < group->g.random.num_groups; i++) {
- UnloadSpriteGroup(&group->g.random.groups[i]);
+ if (group->g.random.groups[i] != NULL) UnloadSpriteGroup(&group->g.random.groups[i]);
}
free(group->g.random.groups);
free(group);