mirror of https://github.com/Radarr/Radarr
Fixed: Built-in updater for mono version
The change to set ExecutingApplication in 26a04c9fd
broke mono - it
returned the location of the mono executable and not radarr.
It seems that there was a change in behaviour in net5.0 which means we
can no longer use the same code in both cases.
This commit is contained in:
parent
bc1e131e49
commit
14d43e6d6b
|
@ -23,7 +23,10 @@ namespace NzbDrone.Common.EnvironmentInfo
|
|||
serviceProvider.ServiceExist(ServiceProvider.SERVICE_NAME) &&
|
||||
serviceProvider.GetStatus(ServiceProvider.SERVICE_NAME) == ServiceControllerStatus.StartPending;
|
||||
|
||||
//Guarded to avoid issues when running in a non-managed process
|
||||
#if NETCOREAPP
|
||||
// net5.0 will return Radarr.dll for entry assembly, we need the actual
|
||||
// executable name (Radarr on linux). On mono this will return the location of
|
||||
// the mono executable itself, which is not what we want.
|
||||
var entry = Process.GetCurrentProcess().MainModule;
|
||||
|
||||
if (entry != null)
|
||||
|
@ -31,6 +34,12 @@ namespace NzbDrone.Common.EnvironmentInfo
|
|||
ExecutingApplication = entry.FileName;
|
||||
IsWindowsTray = OsInfo.IsWindows && entry.ModuleName == $"{ProcessProvider.RADARR_PROCESS_NAME}.exe";
|
||||
}
|
||||
#else
|
||||
// On mono we need to get the location of the Radarr assembly, not Mono.
|
||||
// Can't be running tray app in mono.
|
||||
ExecutingApplication = Assembly.GetEntryAssembly()?.Location;
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
static RuntimeInfo()
|
||||
|
|
Loading…
Reference in New Issue