\r
map<ModuleType,MingwModuleHandler*>*\r
MingwModuleHandler::handler_map = NULL;\r
+int\r
+MingwModuleHandler::ref = 0;\r
\r
FILE*\r
MingwModuleHandler::fMakefile = NULL;\r
\r
MingwModuleHandler::MingwModuleHandler ( ModuleType moduletype )\r
{\r
- if ( !handler_map )\r
+ if ( !ref++ )\r
handler_map = new map<ModuleType,MingwModuleHandler*>;\r
(*handler_map)[moduletype] = this;\r
}\r
\r
+MingwModuleHandler::~MingwModuleHandler()\r
+{\r
+ if ( !--ref )\r
+ {\r
+ delete handler_map;\r
+ handler_map = NULL;\r
+ }\r
+}\r
+\r
/*static*/ void\r
MingwModuleHandler::SetMakefile ( FILE* f )\r
{\r