aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Pulverenti <luke.pulverenti@gmail.com>2016-07-05 00:16:03 -0400
committerLuke Pulverenti <luke.pulverenti@gmail.com>2016-07-05 00:16:03 -0400
commit73e2b1f28355aafae5cc00acdb1bda881b3909a8 (patch)
tree4fc42edc34e7fbc016fd9a19e798972f364b42ce
parent26036837dd0c865a6ac3742717dc3d77ec33cf8e (diff)
add syscall error handling
-rw-r--r--MediaBrowser.Server.Mono/Native/BaseMonoApp.cs27
1 files changed, 21 insertions, 6 deletions
diff --git a/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs b/MediaBrowser.Server.Mono/Native/BaseMonoApp.cs
index 19ae7b4d2..4011fa3de 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;