added xi:fallback support
[reactos.git] / reactos / tools / rbuild / backend / mingw / modulehandler.cpp
index 4c6e34a..23fbfba 100644 (file)
@@ -12,17 +12,28 @@ using std::map;
 \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