aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukePulverenti <luke.pulverenti@gmail.com>2013-03-13 18:33:17 -0400
committerLukePulverenti <luke.pulverenti@gmail.com>2013-03-13 18:33:17 -0400
commitf9dd970bf873de34b6d428bef3212884d310ee9e (patch)
tree429e7ac50509dd1a8f57225e745533f43988a232
parentb258dcd182b2d872e5e584b4f1a0014229a48e27 (diff)
parenta26ef05e7a310a4821c2397d7fd9b2cac08cc3bc (diff)
Merge branch 'master' of https://github.com/MediaBrowser/MediaBrowser
-rw-r--r--MediaBrowser.Common.Implementations/Updates/ApplicationUpdater.cs11
-rw-r--r--MediaBrowser.Installer/MainWindow.xaml.cs24
2 files changed, 24 insertions, 11 deletions
diff --git a/MediaBrowser.Common.Implementations/Updates/ApplicationUpdater.cs b/MediaBrowser.Common.Implementations/Updates/ApplicationUpdater.cs
index 7ab574547..9dc0eb85c 100644
--- a/MediaBrowser.Common.Implementations/Updates/ApplicationUpdater.cs
+++ b/MediaBrowser.Common.Implementations/Updates/ApplicationUpdater.cs
@@ -21,10 +21,15 @@ namespace MediaBrowser.Common.Implementations.Updates
// Use our installer passing it the specific archive
// We need to copy to a temp directory and execute it there
var source = Path.Combine(appPaths.ProgramSystemPath, UpdaterExe);
- var target = Path.Combine(Path.GetTempPath(), UpdaterExe);
+ var tempUpdater = Path.Combine(Path.GetTempPath(), UpdaterExe);
var product = app == MBApplication.MBTheater ? "mbt" : "server";
- File.Copy(source, target, true);
- Process.Start(target, string.Format("product={0} archive=\"{1}\" caller={2} pismo=false", product, archive, Process.GetCurrentProcess().Id));
+ File.Copy(source, tempUpdater, true);
+ // Our updater needs SS and ionic
+ source = Path.Combine(appPaths.ProgramSystemPath, "ServiceStack.Text.dll");
+ File.Copy(source, Path.Combine(Path.GetTempPath(), "ServiceStack.Text.dll"), true);
+ source = Path.Combine(appPaths.ProgramSystemPath, "Ionic.Zip.dll");
+ File.Copy(source, Path.Combine(Path.GetTempPath(), "Ionic.Zip.dll"), true);
+ Process.Start(tempUpdater, string.Format("product={0} archive=\"{1}\" caller={2} pismo=false", product, archive, Process.GetCurrentProcess().Id));
// That's it. The installer will do the work once we exit
}
diff --git a/MediaBrowser.Installer/MainWindow.xaml.cs b/MediaBrowser.Installer/MainWindow.xaml.cs
index 2a905293c..0cf8c2425 100644
--- a/MediaBrowser.Installer/MainWindow.xaml.cs
+++ b/MediaBrowser.Installer/MainWindow.xaml.cs
@@ -38,9 +38,16 @@ namespace MediaBrowser.Installer
public MainWindow()
{
- GetArgs();
- InitializeComponent();
- DoInstall(Archive);
+ try
+ {
+ GetArgs();
+ InitializeComponent();
+ DoInstall(Archive);
+ }
+ catch (Exception e)
+ {
+ MessageBox.Show("Error: " + e.Message + " \n\n" + e.StackTrace);
+ }
}
private void btnCancel_Click(object sender, RoutedEventArgs e)
@@ -90,7 +97,6 @@ namespace MediaBrowser.Installer
args[nameValue[0]] = nameValue[1];
}
}
-
Archive = args.GetValueOrDefault("archive", null);
if (args.GetValueOrDefault("pismo","true") == "false") InstallPismo = false;
@@ -113,6 +119,8 @@ namespace MediaBrowser.Installer
}
}
+ //MessageBox.Show(string.Format("Called with args: product: {0} archive: {1} caller: {2}", product, Archive, callerId));
+
switch (product.ToLower())
{
case "mbt":
@@ -143,8 +151,8 @@ namespace MediaBrowser.Installer
lblStatus.Text = string.Format("Installing {0}...", FriendlyName);
// Determine Package version
- var version = await GetPackageVersion();
- ActualVersion = version.version;
+ var version = archive == null ? await GetPackageVersion() : null;
+ ActualVersion = version != null ? version.version : new Version(3,0);
// Now try and shut down the server if that is what we are installing and it is running
var procs = Process.GetProcessesByName("mediabrowser.serverapplication");
@@ -168,9 +176,9 @@ namespace MediaBrowser.Installer
}
catch (WebException e)
{
- if (e.GetStatus() == HttpStatusCode.NotFound || e.Message.StartsWith("Unable to connect",StringComparison.OrdinalIgnoreCase)) return; // just wasn't running
+ if (e.Status == WebExceptionStatus.Timeout || e.Message.StartsWith("Unable to connect",StringComparison.OrdinalIgnoreCase)) return; // just wasn't running
- MessageBox.Show("Error shutting down server. Please be sure it is not running before hitting OK.\n\n" + e.GetStatus() + "\n\n" + e.Message);
+ MessageBox.Show("Error shutting down server. Please be sure it is not running before hitting OK.\n\n" + e.Status + "\n\n" + e.Message);
}
}
}