diff --git a/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs b/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs index 19ae7b4d21..4011fa3de3 100644 --- a/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs +++ b/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs @@ -183,6 +183,14 @@ namespace MediaBrowser.Server.Mono.Native { info.SystemArchitecture = Architecture.Arm; } + else if (System.Environment.Is64BitOperatingSystem) + { + info.SystemArchitecture = Architecture.X64; + } + else + { + info.SystemArchitecture = Architecture.X86; + } info.OperatingSystemVersionString = string.IsNullOrWhiteSpace(sysName) ? System.Environment.OSVersion.VersionString : @@ -198,14 +206,21 @@ namespace MediaBrowser.Server.Mono.Native if (_unixName == null) { var uname = new Uname(); - Utsname utsname; - var callResult = Syscall.uname(out utsname); - if (callResult == 0) + try { - uname.sysname = utsname.sysname; - uname.machine = utsname.machine; - } + Utsname utsname; + var callResult = Syscall.uname(out utsname); + if (callResult == 0) + { + uname.sysname = utsname.sysname ?? string.Empty; + uname.machine = utsname.machine ?? string.Empty; + } + } + catch (Exception ex) + { + Logger.ErrorException("Error getting unix name", ex); + } _unixName = uname; } return _unixName;