diff --git a/MvsSln/Core/IsolatedEnv.cs b/MvsSln/Core/IsolatedEnv.cs index 5da65b2..911cdca 100644 --- a/MvsSln/Core/IsolatedEnv.cs +++ b/MvsSln/Core/IsolatedEnv.cs @@ -317,15 +317,22 @@ protected virtual IEnumerable Load(IEnumerable pItems protected Project Load(ProjectItem pItem, IDictionary properties) { - if(rawXmlProjects != null && rawXmlProjects.ContainsKey(pItem.pGuid)) - { - var raw = rawXmlProjects[pItem.pGuid]; + if(rawXmlProjects != null && rawXmlProjects.ContainsKey(pItem.pGuid)) { + return Load(rawXmlProjects[pItem.pGuid], properties); + } + return Load(pItem.fullPath, properties); + } - using(var reader = XmlReader.Create(new StreamReader(raw.data.GetStream(raw.encoding), raw.encoding))) { - return new Project(reader, properties, null, PrjCollection); - } + protected virtual Project Load(RawText raw, IDictionary properties) + { + using(var reader = XmlReader.Create(new StreamReader(raw.data.GetStream(raw.encoding), raw.encoding))) { + return new Project(reader, properties, null, PrjCollection); } - return new Project(pItem.fullPath, properties, null, PrjCollection); + } + + protected virtual Project Load(string path, IDictionary properties) + { + return new Project(path, properties, null, PrjCollection); } /// diff --git a/Readme.md b/Readme.md index ed5e3c0..909668a 100644 --- a/Readme.md +++ b/Readme.md @@ -146,7 +146,7 @@ The final draft-version of the new configurator for DllExport now fully works vi ### Map of .sln & Writers -v2+ also may provides map of analyzed data. To enable this define a bit **0x0080** for type of operations to parser. +v2+ also provides map of analyzed data. To enable this, define a bit **0x0080** for type of operations to parser. Parser will expose map through list of `ISection` for each line. For example: