summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortruelight <truelight@openttd.org>2006-08-26 19:29:35 +0000
committertruelight <truelight@openttd.org>2006-08-26 19:29:35 +0000
commitf25e5e90d29515341d192af32e5da5cc8949b9c0 (patch)
tree677f2bfad054045fd1aaa3d5e751e367223aa80f
parent7e6f1f16c0562413d5f59c87b8fed109ef75b604 (diff)
downloadopenttd-f25e5e90d29515341d192af32e5da5cc8949b9c0.tar.xz
(svn r6153) -Codechange: DeleteSign removes a sign from the pool
-Codechange: DestroySign is called by DeleteSign to remove all things where a sign depends on. Last 2 changes to prepare for new pool system. Not pretty now, will be soon.
-rw-r--r--signs.c8
-rw-r--r--signs.h4
2 files changed, 10 insertions, 2 deletions
diff --git a/signs.c b/signs.c
index d507ffe4c..f6d796d52 100644
--- a/signs.c
+++ b/signs.c
@@ -103,7 +103,13 @@ static Sign *AllocateSign(void)
return NULL;
}
-/** Place a sign at the given coordinates. Ownership of sign has
+void DestroySign(Sign *si)
+{
+ DeleteName(si->str);
+}
+
+/**
+ * Place a sign at the given coordinates. Ownership of sign has
* no effect whatsoever except for the colour the sign gets for easy recognition,
* but everybody is able to rename/remove it.
* @param tile tile to place sign at
diff --git a/signs.h b/signs.h
index e2d5f9f7f..8ae34f52e 100644
--- a/signs.h
+++ b/signs.h
@@ -57,9 +57,11 @@ static inline bool IsValidSignID(uint index)
return index < GetSignPoolSize() && IsValidSign(GetSign(index));
}
+void DestroySign(Sign *si);
+
static inline void DeleteSign(Sign *si)
{
- DeleteName(si->str);
+ DestroySign(si);
si->str = STR_NULL;
}