diff options
| author | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-05-23 18:01:13 -0400 |
|---|---|---|
| committer | Luke Pulverenti <luke.pulverenti@gmail.com> | 2015-05-23 18:01:13 -0400 |
| commit | fb48dd34870d5ef8d1d636d83af5132e26b99449 (patch) | |
| tree | 9e7255544f2ada5494ac4c20b6bd54d72ad47038 /MediaBrowser.Server.Mac/Main.cs | |
| parent | d0c9273d679cfec73c10e6f863c5cf9012a3aa2f (diff) | |
support mono restarts
Diffstat (limited to 'MediaBrowser.Server.Mac/Main.cs')
| -rw-r--r-- | MediaBrowser.Server.Mac/Main.cs | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/MediaBrowser.Server.Mac/Main.cs b/MediaBrowser.Server.Mac/Main.cs index b4184f3b19..cffa62fae7 100644 --- a/MediaBrowser.Server.Mac/Main.cs +++ b/MediaBrowser.Server.Mac/Main.cs @@ -146,6 +146,26 @@ namespace MediaBrowser.Server.Mac MenuBarIcon.Instance.Terminate (); } + public static void Restart() + { + _logger.Info("Disposing app host"); + AppHost.Dispose(); + + _logger.Info("Starting new instance"); + + var currentProcess = Process.GetCurrentProcess(); + + var args = Environment.GetCommandLineArgs() + .Select(NormalizeCommandLineArgument); + + var commandLineArgsString = string.Join(" ", args.ToArray()); + + Process.Start(currentProcess.MainModule.FileName, commandLineArgsString); + + _logger.Info("AppController.Terminate"); + MenuBarIcon.Instance.Terminate(); + } + /// <summary> /// Handles the UnhandledException event of the CurrentDomain control. /// </summary> |
