From 6e3947c0b1cc1496bc16de7566e624ec718a36fc Mon Sep 17 00:00:00 2001 From: mika kuns Date: Fri, 29 May 2026 16:12:15 +0200 Subject: [PATCH] fix(ui): narrow delete-list FK catch to SqliteException --- .../ViewModels/Modals/ListSettingsModalViewModel.cs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) 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.");