src/ai/ai_factory.hpp
branchnoai
changeset 9471 467ee8749166
parent 9468 e3eb6d371fbb
child 9723 eee46cb39750
--- a/src/ai/ai_factory.hpp	Mon Mar 19 00:00:26 2007 +0000
+++ b/src/ai/ai_factory.hpp	Mon Mar 19 00:19:42 2007 +0000
@@ -15,7 +15,7 @@
 
 class AIFactoryBase {
 private:
-	const char *name;
+	char *name;
 	typedef std::map<std::string, AIFactoryBase *> Factories;
 
 	static Factories &GetFactories()
@@ -33,7 +33,7 @@
 		/* Don't register nameless Factories */
 		if (name == NULL) return;
 
-		this->name = name;
+		this->name = strdup(name);
 		std::pair<Factories::iterator, bool> P = GetFactories().insert(Factories::value_type(name, this));
 		assert(P.second);
 	}
@@ -42,7 +42,7 @@
 	AIFactoryBase() :
 		name(NULL)
 	{}
-	virtual ~AIFactoryBase() { if (this->name != NULL) GetFactories().erase(this->name); }
+	virtual ~AIFactoryBase() { if (this->name != NULL) GetFactories().erase(this->name); free(this->name); }
 
 	/**
 	 * Run all initializers.