Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/duplicati/duplicati.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKenneth Skovhede <kenneth@hexad.dk>2014-07-01 17:38:20 +0400
committerKenneth Skovhede <kenneth@hexad.dk>2014-07-01 17:38:20 +0400
commit09054e7dab68ffcc5a0ff0da2c4093ff2f479a18 (patch)
tree78ee956a26948af086cd6125bce6e3bda51002be /BuildTools
parent9dfd4f9acbf53bdd5afac235729294ff52880f72 (diff)
Better debugging when setting update params from commandline
Diffstat (limited to 'BuildTools')
-rw-r--r--BuildTools/AutoUpdateBuilder/Program.cs18
1 files changed, 15 insertions, 3 deletions
diff --git a/BuildTools/AutoUpdateBuilder/Program.cs b/BuildTools/AutoUpdateBuilder/Program.cs
index df32e1066..31968e428 100644
--- a/BuildTools/AutoUpdateBuilder/Program.cs
+++ b/BuildTools/AutoUpdateBuilder/Program.cs
@@ -96,15 +96,27 @@ namespace AutoUpdateBuilder
updateInfo = new Newtonsoft.Json.JsonSerializer().Deserialize<Duplicati.Library.AutoUpdater.UpdateInfo>(jr);
+ var isopts = new Dictionary<string, string>(opts, StringComparer.InvariantCultureIgnoreCase);
foreach (var k in updateInfo.GetType().GetFields())
- if (opts.ContainsKey(k.Name))
+ if (isopts.ContainsKey(k.Name))
{
try
{
- k.SetValue(updateInfo, opts[k.Name]);
+ //Console.WriteLine("Setting {0} to {1}", k.Name, isopts[k.Name]);
+ if (k.FieldType == typeof(string[]))
+ k.SetValue(updateInfo, isopts[k.Name].Split(new char[] {';'}, StringSplitOptions.RemoveEmptyEntries));
+ else if(k.FieldType == typeof(Version))
+ k.SetValue(updateInfo, new Version(isopts[k.Name]));
+ else if(k.FieldType == typeof(int))
+ k.SetValue(updateInfo, int.Parse(isopts[k.Name]));
+ else if(k.FieldType == typeof(long))
+ k.SetValue(updateInfo, long.Parse(isopts[k.Name]));
+ else
+ k.SetValue(updateInfo, isopts[k.Name]);
}
- catch
+ catch (Exception ex)
{
+ Console.WriteLine("Failed setting {0} to {1}: {2}", k.Name, isopts[k.Name], ex.Message);
}
}