Installers: Fix Steam library manifest parsing. Fixes #21129
This commit is contained in:
@@ -109,10 +109,15 @@ namespace OpenRA.Mods.Common.Installer
|
|||||||
continue;
|
continue;
|
||||||
|
|
||||||
foreach (var e in ParseLibraryManifest(libraryFoldersPath).Where(e => e.Item1 == "path"))
|
foreach (var e in ParseLibraryManifest(libraryFoldersPath).Where(e => e.Item1 == "path"))
|
||||||
yield return e.Item2;
|
yield return Unescape(e.Item2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static string Unescape(string path)
|
||||||
|
{
|
||||||
|
return path.Replace(@"\\", @"\");
|
||||||
|
}
|
||||||
|
|
||||||
static Dictionary<string, string> ParseGameManifest(string path)
|
static Dictionary<string, string> ParseGameManifest(string path)
|
||||||
{
|
{
|
||||||
var regex = new Regex("^\\s*\"(?<key>[^\"]*)\"\\s*\"(?<value>[^\"]*)\"\\s*$");
|
var regex = new Regex("^\\s*\"(?<key>[^\"]*)\"\\s*\"(?<value>[^\"]*)\"\\s*$");
|
||||||
|
|||||||
Reference in New Issue
Block a user