changeset 14534:f2948ee1b4ab draft

(svn r19105) -Fix [FS#3614]: not all news data was properly freed when starting a new game
author yexo <yexo@openttd.org>
date Fri, 12 Feb 2010 16:42:29 +0000
parents f5caecabd634
children deb61b8cd788
files src/news_gui.cpp src/news_type.h
diffstat 2 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/news_gui.cpp
+++ b/src/news_gui.cpp
@@ -723,8 +723,6 @@
 		_latest_news = ni->prev;
 	}
 
-	free(ni->free_data);
-
 	if (_current_news == ni) _current_news = ni->prev;
 	_total_news--;
 	delete ni;
--- a/src/news_type.h
+++ b/src/news_type.h
@@ -144,6 +144,11 @@
 
 	void *free_data;             ///< Data to be freed when the news item has reached its end.
 
+	~NewsItem()
+	{
+		free(this->free_data);
+	}
+
 	uint64 params[10];
 };