From ff63b73c0965bcd439f87b157d058fa3f4715254 Mon Sep 17 00:00:00 2001 From: MBucari Date: Thu, 13 Jul 2023 09:25:57 -0600 Subject: [PATCH] Fix #673 --- Source/LibationAvalonia/Program.cs | 9 +++++++-- .../LibationUiBase/GridView/LibraryBookEntry[TStatus].cs | 2 ++ Source/LibationUiBase/GridView/SeriesEntry[TStatus].cs | 1 - 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Source/LibationAvalonia/Program.cs b/Source/LibationAvalonia/Program.cs index 3061d4b7..4d4c46c8 100644 --- a/Source/LibationAvalonia/Program.cs +++ b/Source/LibationAvalonia/Program.cs @@ -36,6 +36,7 @@ namespace LibationAvalonia } AppDomain.CurrentDomain.UnhandledException += (o, e) => LogError(e.ExceptionObject); + bool loggingEnabled = false; //***********************************************// // // // do not use Configuration before this line // @@ -55,6 +56,7 @@ namespace LibationAvalonia // most migrations go in here LibationScaffolding.RunPostConfigMigrations(config); LibationScaffolding.RunPostMigrationScaffolding(Variety.Chardonnay, config); + loggingEnabled = true; //Start loading the library before loading the main form App.LibraryTask = Task.Run(() => DbContexts.GetLibrary_Flat_NoTracking(includeParents: true)); @@ -64,9 +66,12 @@ namespace LibationAvalonia classicLifetimeTask.Result.Start(null); } - catch(Exception e) + catch (Exception ex) { - LogError(e); + if (loggingEnabled) + Serilog.Log.Logger.Error(ex, "CRASH"); + else + LogError(ex); } } diff --git a/Source/LibationUiBase/GridView/LibraryBookEntry[TStatus].cs b/Source/LibationUiBase/GridView/LibraryBookEntry[TStatus].cs index e8ee3f0e..5866ae40 100644 --- a/Source/LibationUiBase/GridView/LibraryBookEntry[TStatus].cs +++ b/Source/LibationUiBase/GridView/LibraryBookEntry[TStatus].cs @@ -54,6 +54,8 @@ namespace LibationUiBase.GridView SynchronizationContext.SetSynchronizationContext(syncContext); int length = int.Min(numPer, products.Length - start); + if (length < 1) return Array.Empty(); + var result = new IGridEntry[length]; for (int j = 0; j < length; j++) diff --git a/Source/LibationUiBase/GridView/SeriesEntry[TStatus].cs b/Source/LibationUiBase/GridView/SeriesEntry[TStatus].cs index 7ca1f73e..0c140946 100644 --- a/Source/LibationUiBase/GridView/SeriesEntry[TStatus].cs +++ b/Source/LibationUiBase/GridView/SeriesEntry[TStatus].cs @@ -4,7 +4,6 @@ using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Threading; -using System.Threading.Channels; using System.Threading.Tasks; namespace LibationUiBase.GridView