Skip to content

Commit

Permalink
Switched to regex for Json handling, fixed updater exception
Browse files Browse the repository at this point in the history
  • Loading branch information
imDema committed Jul 16, 2017
1 parent 16d4854 commit d7b8e9a
Show file tree
Hide file tree
Showing 5 changed files with 15 additions and 27 deletions.
5 changes: 3 additions & 2 deletions FreeMove/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
Expand Up @@ -32,5 +32,6 @@
// È possibile specificare tutti i valori oppure impostare valori predefiniti per i numeri relativi alla revisione e alla build
// usando l'asterisco '*' come illustrato di seguito:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.2.0")]
[assembly: AssemblyFileVersion("1.2.0.0")]

[assembly: AssemblyVersion("1.2.2")]
[assembly: AssemblyFileVersion("1.2.2")]
3 changes: 2 additions & 1 deletion FreeMove/Properties/Resources.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

3 changes: 2 additions & 1 deletion FreeMove/Properties/Resources.resx
Original file line number Diff line number Diff line change
Expand Up @@ -118,6 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="GitHubErrorMessage" xml:space="preserve">
<value>Could not retrieve the version information from the GitHub server</value>
<value>Could not retrieve the version information
from the GitHub server</value>
</data>
</root>
2 changes: 0 additions & 2 deletions FreeMove/Updater.Designer.cs

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

29 changes: 8 additions & 21 deletions FreeMove/Updater.cs
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System.Reflection;
using System.Text.RegularExpressions;

namespace FreeMove
{
Expand Down Expand Up @@ -48,9 +49,10 @@ private async void Updater_Load(object sender, EventArgs e)
}
catch(Exception ex)
{
if (ex.Message == Properties.Resources.GitHubErrorMessage)
if (ex.Message == Properties.Resources.GitHubErrorMessage || ex is WebException)
{
label1.Text = Properties.Resources.GitHubErrorMessage;
progressBar1.Dispose();
button_Ok.Enabled = true;
button_Ok.Click += delegate { Dispose(); };
}
Expand All @@ -64,30 +66,15 @@ public async Task<bool> CheckForUpdate()
Req.UserAgent = "ImDema/FreeMove Updater";
HttpWebResponse Response = (HttpWebResponse) await Req.GetResponseAsync();
Stream ResponseStream = Response.GetResponseStream();
JsonTextReader Reader = new JsonTextReader(new StreamReader(ResponseStream));
while(await Reader.ReadAsync())
{
if(Reader.TokenType == JsonToken.PropertyName && (string)Reader.Value == "tag_name")
{
Reader.Read();
NewVersion = Reader.Value as string + ".0";
break;
}
}

TextReader Reader = new StreamReader(ResponseStream);
const string pattern = "\"tag_name\":\"([0-9.]{5,9})\"";
NewVersion = Regex.Match(Reader.ReadToEnd(), pattern,RegexOptions.Multiline).Groups[1].Value;

if (NewVersion == "") throw new Exception(Properties.Resources.GitHubErrorMessage);
Assembly assembly = Assembly.GetExecutingAssembly();
CurrentVersion = System.Diagnostics.FileVersionInfo.GetVersionInfo(assembly.Location).FileVersion;
return CurrentVersion != NewVersion;
}

private void Button2_Click(object sender, EventArgs e)
{

}

private void Button1_Click(object sender, EventArgs e)
{

}
}
}

0 comments on commit d7b8e9a

Please sign in to comment.