From: Marek Safar Date: Tue, 12 May 2015 09:43:07 +0000 (+0200) Subject: [mcs] Support multiple string resource files X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=commitdiff_plain;h=285c7dd5b7b6fb83721a45ef203a62fcb0e1d85b;p=mono.git [mcs] Support multiple string resource files --- diff --git a/mcs/mcs/module.cs b/mcs/mcs/module.cs index 262f55e7b53..00afac6c604 100644 --- a/mcs/mcs/module.cs +++ b/mcs/mcs/module.cs @@ -745,29 +745,31 @@ namespace Mono.CSharp this.assembly = assembly; } - public void LoadGetResourceStrings (string fileName) + public void LoadGetResourceStrings (List fileNames) { - if (!File.Exists (fileName)) { - Report.Error (1566, "Error reading resource file `{0}'", fileName); - return; - } + foreach (var fileName in fileNames) { + if (!File.Exists (fileName)) { + Report.Error (1566, "Error reading resource file `{0}'", fileName); + return; + } - foreach (var l in File.ReadLines (fileName)) { - if (GetResourceStrings == null) - GetResourceStrings = new Dictionary (); + foreach (var l in File.ReadLines (fileName)) { + if (GetResourceStrings == null) + GetResourceStrings = new Dictionary (); - var line = l.Trim (); - if (line.Length == 0 || line [0] == '#' || line [0] == ';') - continue; + var line = l.Trim (); + if (line.Length == 0 || line [0] == '#' || line [0] == ';') + continue; - var epos = line.IndexOf ('='); - if (epos < 0) - continue; + var epos = line.IndexOf ('='); + if (epos < 0) + continue; - var key = line.Substring (0, epos).Trim (); - var value = line.Substring (epos + 1).Trim (); + var key = line.Substring (0, epos).Trim (); + var value = line.Substring (epos + 1).Trim (); - GetResourceStrings [key] = value; + GetResourceStrings [key] = value; + } } } } diff --git a/mcs/mcs/settings.cs b/mcs/mcs/settings.cs index 42156d77ba9..9b366d636d8 100644 --- a/mcs/mcs/settings.cs +++ b/mcs/mcs/settings.cs @@ -150,7 +150,7 @@ namespace Mono.CSharp { public bool BreakOnInternalError; #endregion - public string GetResourceStrings; + public List GetResourceStrings; public bool ShowFullPaths; @@ -1485,7 +1485,10 @@ namespace Mono.CSharp { return ParseResult.Error; } - settings.GetResourceStrings = file; + if (settings.GetResourceStrings == null) + settings.GetResourceStrings = new List (); + + settings.GetResourceStrings.Add (file); return ParseResult.Success; }