diff --git a/src/ClaudeDo.Ui/ViewModels/Modals/ListSettingsModalViewModel.cs b/src/ClaudeDo.Ui/ViewModels/Modals/ListSettingsModalViewModel.cs index ac169ff..9f7a635 100644 --- a/src/ClaudeDo.Ui/ViewModels/Modals/ListSettingsModalViewModel.cs +++ b/src/ClaudeDo.Ui/ViewModels/Modals/ListSettingsModalViewModel.cs @@ -107,8 +107,10 @@ public sealed partial class ListSettingsModalViewModel : ViewModelBase await lists.DeleteAsync(ListId); } catch (Exception ex) when ( - ex.Message.Contains("FOREIGN KEY", StringComparison.OrdinalIgnoreCase) - || ex.InnerException?.Message.Contains("FOREIGN KEY", StringComparison.OrdinalIgnoreCase) == true) + (ex is Microsoft.Data.Sqlite.SqliteException + || ex.InnerException is Microsoft.Data.Sqlite.SqliteException) + && (ex.Message.Contains("FOREIGN KEY", StringComparison.OrdinalIgnoreCase) + || ex.InnerException?.Message.Contains("FOREIGN KEY", StringComparison.OrdinalIgnoreCase) == true)) { if (ShowErrorAsync is not null) await ShowErrorAsync("This list has planning sessions with child tasks. Discard those first, then delete the list.");