From 0485bd935b235e1162332ca145e7fbb6e5aecb3b Mon Sep 17 00:00:00 2001 From: deva Date: Thu, 14 Jan 2010 14:11:27 +0000 Subject: Made EntityList able to handle several files with same macroname and version number, without corrupting the internal data structure (switched from map to multimap). --- server/src/macrolist.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) (limited to 'server/src/macrolist.cc') diff --git a/server/src/macrolist.cc b/server/src/macrolist.cc index 86584d4..9dadb12 100644 --- a/server/src/macrolist.cc +++ b/server/src/macrolist.cc @@ -27,6 +27,8 @@ */ #include "macrolist.h" +#include + #include "macroheaderparser.h" #include "debug.h" @@ -45,7 +47,8 @@ void MacroList::addFile(std::string file) try { parser.parse(); Macro *macro = parser.getMacro(); - (*this)[macro->attributes["name"]][VersionStr(macro->attributes["version"])] = file; + std::pair p(VersionStr(macro->attributes["version"]), file); + (*this)[macro->attributes["name"]].insert(p); } catch(Exception &e) { PRACRO_WARN(macrolist, "Skipping %s: %s\n", file.c_str(), e.what()); } -- cgit v1.2.3