Merge pull request #3036 from sbwalker/dev
Added logic to ensure assembly version being installed is equal to or greater than existing assembly
This commit is contained in:
commit
96e7178cd2
|
@ -201,7 +201,24 @@ namespace Oqtane.Infrastructure
|
||||||
{
|
{
|
||||||
Directory.CreateDirectory(Path.GetDirectoryName(filename));
|
Directory.CreateDirectory(Path.GetDirectoryName(filename));
|
||||||
}
|
}
|
||||||
entry.ExtractToFile(filename, true);
|
if (Path.Exists(filename) && Path.GetExtension(filename).ToLower() == ".dll")
|
||||||
|
{
|
||||||
|
// ensure assembly version is equal to or greater than existing assembly
|
||||||
|
var assembly = filename.Replace(Path.GetFileName(filename), "temp.dll");
|
||||||
|
entry.ExtractToFile(assembly, true);
|
||||||
|
if (Version.Parse(FileVersionInfo.GetVersionInfo(assembly).FileVersion).CompareTo(Version.Parse(FileVersionInfo.GetVersionInfo(filename).FileVersion)) >= 0)
|
||||||
|
{
|
||||||
|
File.Move(assembly, filename, true);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
File.Delete(assembly);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
entry.ExtractToFile(filename, true);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
catch
|
catch
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue
Block a user