OpenRA.Program.FatalError C# (CSharp) Method

FatalError() static private method

static private FatalError ( Exception e ) : void
e System.Exception
return void
        static void FatalError(Exception e)
        {
            var exceptionName = "exception-" + DateTime.UtcNow.ToString("yyyy-MM-ddTHHmmssZ", CultureInfo.InvariantCulture) + ".log";
            Log.AddChannel("exception", exceptionName);

            if (Game.ModData != null)
            {
                var mod = Game.ModData.Manifest.Metadata;
                Log.Write("exception", "{0} Mod at Version {1}", mod.Title, mod.Version);
            }

            if (Game.OrderManager != null && Game.OrderManager.World != null && Game.OrderManager.World.Map != null)
            {
                var map = Game.OrderManager.World.Map;
                Log.Write("exception", "on map {0} ({1} by {2}).", map.Uid, map.Title, map.Author);
            }

            Log.Write("exception", "Date: {0:u}", DateTime.UtcNow);
            Log.Write("exception", "Operating System: {0} ({1})", Platform.CurrentPlatform, Environment.OSVersion);
            Log.Write("exception", "Runtime Version: {0}", Platform.RuntimeVersion);
            var rpt = BuildExceptionReport(e).ToString();
            Log.Write("exception", "{0}", rpt);
            Console.Error.WriteLine(rpt);
        }