Merge pull request #3751 from jlewin/master

Improve error handling on help requests, skip invalid page paths
This commit is contained in:
johnlewin 2018-09-24 13:54:21 -07:00 committed by GitHub
commit e4d7e5d68c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 21 additions and 6 deletions

View file

@ -242,7 +242,15 @@ namespace MatterHackers.MatterControl
{
if (treeView.SelectedNode.Tag is HelpArticle article)
{
markdownWidget.LoadUri(new Uri(ApplicationController.Instance.HelpArticleSource, article.Path), sourceArticle: article);
if (!string.IsNullOrWhiteSpace(article.Path))
{
markdownWidget.LoadUri(new Uri(ApplicationController.Instance.HelpArticleSource, article.Path), sourceArticle: article);
}
else
{
// Switch to empty content when path article lacks path
markdownWidget.Markdown = "";
}
}
};

View file

@ -90,12 +90,19 @@ namespace Markdig.Agg
public void LoadUri(Uri uri, HelpArticle sourceArticle = null)
{
var webClient = new WebClient();
markdownDocument.BaseUri = uri;
try
{
var webClient = new WebClient();
markdownDocument.BaseUri = uri;
this.sourceArticle = sourceArticle;
this.Markdown = webClient.DownloadString(uri);
this.sourceArticle = sourceArticle;
this.Markdown = webClient.DownloadString(uri);
}
catch
{
// On error, revert to empty content
this.Markdown = "";
}
}
private HelpArticle sourceArticle;