diff --git a/RemoteTerminal/ChangelogManager.cs b/RemoteTerminal/ChangelogManager.cs index 50ad173..2e9ba21 100644 --- a/RemoteTerminal/ChangelogManager.cs +++ b/RemoteTerminal/ChangelogManager.cs @@ -26,7 +26,7 @@ public static class ChangelogManager /// /// The version of the most current changelog. /// - private const string CurrentVersion = "1.9.0"; + private const string CurrentVersion = "1.9.1"; /// /// The name of the setting containing the last read changelog version. @@ -34,12 +34,12 @@ public static class ChangelogManager private const string LastReadChangelogSettingName = "LastReadChangelog"; /// - /// This array contains, in reverse order, all versions of the app for which a changelog is available. + /// This array contains, in reverse order, all previous versions of the app for which a changelog is available. /// - /// The first entry should always be . - private static readonly string[] Versions = new[] + /// must not be included in this list. + private static readonly string[] PreviousVersions = new[] { - CurrentVersion, + "1.9.0", "1.8.2", }; @@ -70,14 +70,18 @@ public static string ProduceChangelog() changelog.Append(ReadHtmlFile("head") .Replace("{CurrentVersion}", CurrentVersion)); - foreach (string version in Versions) + changelog.Append(ReadHtmlFile(CurrentVersion)); + if (CurrentVersion != lastReadChangelog) { - if (version == lastReadChangelog) + foreach (string version in PreviousVersions) { - break; - } + if (version == lastReadChangelog) + { + break; + } - changelog.Append(ReadHtmlFile(version)); + changelog.Append(ReadHtmlFile(version)); + } } changelog.Append(ReadHtmlFile("tail")); diff --git a/RemoteTerminal/Changelogs/1.9.1.htm b/RemoteTerminal/Changelogs/1.9.1.htm new file mode 100644 index 0000000..2f0656d --- /dev/null +++ b/RemoteTerminal/Changelogs/1.9.1.htm @@ -0,0 +1,9 @@ +

1.9.1 (2017-05-29)

+

+ Fixed a regression with private key authentication +

+

+ Since 1.9.0 private key authentication did not work because of a threading issue.
+ The terminal just got stuck at a blank screen with a red border.
+ Password and Private Key Agent authentication was not affected by this bug. +

diff --git a/RemoteTerminal/Package.appxmanifest b/RemoteTerminal/Package.appxmanifest index 8d480b4..4f79763 100644 --- a/RemoteTerminal/Package.appxmanifest +++ b/RemoteTerminal/Package.appxmanifest @@ -1,6 +1,6 @@  - + Remote Terminal Stefan Podskubka diff --git a/RemoteTerminal/Properties/AssemblyInfo.cs b/RemoteTerminal/Properties/AssemblyInfo.cs index 0871453..7662c9a 100644 --- a/RemoteTerminal/Properties/AssemblyInfo.cs +++ b/RemoteTerminal/Properties/AssemblyInfo.cs @@ -23,6 +23,6 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("1.9.0.22")] -[assembly: AssemblyFileVersion("1.9.0.22")] +[assembly: AssemblyVersion("1.9.1.23")] +[assembly: AssemblyFileVersion("1.9.1.23")] [assembly: ComVisible(false)] \ No newline at end of file diff --git a/RemoteTerminal/RemoteTerminal.csproj b/RemoteTerminal/RemoteTerminal.csproj index 2bcaffa..f86cce3 100644 --- a/RemoteTerminal/RemoteTerminal.csproj +++ b/RemoteTerminal/RemoteTerminal.csproj @@ -199,6 +199,7 @@ + Designer diff --git a/RemoteTerminal/TerminalPage.xaml.cs b/RemoteTerminal/TerminalPage.xaml.cs index 5d3ab35..40c9601 100644 --- a/RemoteTerminal/TerminalPage.xaml.cs +++ b/RemoteTerminal/TerminalPage.xaml.cs @@ -252,6 +252,7 @@ private void PreviewGrid_ItemClick(object sender, ItemClickEventArgs e) private void PreviewGrid_ItemCloseButtonClick(object sender, RoutedEventArgs e) { ITerminal terminal = ((Button)sender).Tag as ITerminal; + TerminalManager.Remove(terminal); if (this.Terminal == terminal) { var switchToTerminal = TerminalManager.Terminals.Where(t => t != terminal).FirstOrDefault(); @@ -264,8 +265,6 @@ private void PreviewGrid_ItemCloseButtonClick(object sender, RoutedEventArgs e) this.Terminal = switchToTerminal; } } - - TerminalManager.Remove(terminal); } /// diff --git a/RemoteTerminal/Terminals/AbstractTerminal.cs b/RemoteTerminal/Terminals/AbstractTerminal.cs index 31f101d..ca1437c 100644 --- a/RemoteTerminal/Terminals/AbstractTerminal.cs +++ b/RemoteTerminal/Terminals/AbstractTerminal.cs @@ -316,30 +316,30 @@ public bool ScreenHasFocus /// public void PowerOn() { - Task.Factory.StartNew(async () => + switch (connectionData.Type) { - switch (connectionData.Type) - { - case ConnectionType.Telnet: - this.connection = new TelnetConnection(); - break; - case ConnectionType.Ssh: - this.connection = new SshConnection(); - break; - default: - break; - } + case ConnectionType.Telnet: + this.connection = new TelnetConnection(); + break; + case ConnectionType.Ssh: + this.connection = new SshConnection(); + break; + default: + break; + } - this.connection.Initialize(connectionData); - this.IsConnected = true; - this.ScreenHasFocus = true; + this.connection.Initialize(connectionData); + this.IsConnected = true; + this.ScreenHasFocus = true; - var connected = this.Connected; - if (connected != null) - { - connected.Invoke(this, new EventArgs()); - } + var connected = this.Connected; + if (connected != null) + { + connected.Invoke(this, new EventArgs()); + } + Task.Factory.StartNew(async () => + { this.screenInitWaiter.Wait(); bool successful = await this.connection.ConnectAsync(this); if (successful)