Fix file location bug in paths with spaces during updates (#6814) resolves #6671

This commit is contained in:
Cory 2020-01-04 12:49:53 -06:00 committed by garfield69
parent a865a697fa
commit e7a48c4234
2 changed files with 10 additions and 4 deletions

View File

@ -51,8 +51,11 @@ namespace Jackett.Common.Services
private string ExePath()
{
var location = new Uri(Assembly.GetEntryAssembly().GetName().CodeBase);
return new FileInfo(location.AbsolutePath).FullName;
// Use EscapedCodeBase to avoid Uri reserved characters from causing bugs
// https://stackoverflow.com/questions/896572
var location = new Uri(Assembly.GetEntryAssembly().GetName().EscapedCodeBase);
// Use LocalPath instead of AbsolutePath to avoid needing to unescape Uri format.
return new FileInfo(location.LocalPath).FullName;
}
public void StartUpdateChecker()

View File

@ -553,8 +553,11 @@ namespace Jackett.Updater
private string GetUpdateLocation()
{
var location = new Uri(Assembly.GetEntryAssembly().GetName().CodeBase);
return new FileInfo(WebUtility.UrlDecode(location.AbsolutePath)).DirectoryName;
// Use EscapedCodeBase to avoid Uri reserved characters from causing bugs
// https://stackoverflow.com/questions/896572
var location = new Uri(Assembly.GetEntryAssembly().GetName().EscapedCodeBase);
// Use LocalPath instead of AbsolutePath to avoid needing to unescape Uri format.
return new FileInfo(location.LocalPath).DirectoryName;
}
private string GetJackettConsolePath(string directoryPath)