fix(blur): the crash on launch — BlurAmount was in the INSERT and the reader, not the SELECT

LayoutStore.Load threw ArgumentOutOfRangeException on GetOrdinal("BlurAmount") during the
MainViewModel constructor, so the app died at startup rather than when a blur was used. The
migration adds the column and Save writes it; the reading query still listed its columns
explicitly and BlurAmount was missing from that list.

Adds LayoutBlurPersistenceTests: a blur saved and reloaded, asserting the amount and geometry
survive. That is the test that should have existed with the feature — the startup path it
covers has no other guard.
This commit is contained in:
2026-11-01 13:08:03 -08:00
parent 71d0e87cac
commit 0ed341fd18
2 changed files with 51 additions and 1 deletions
+1 -1
View File
@@ -111,7 +111,7 @@ public partial class LayoutStore : IDisposable
ChatShowTimestamps, ChatShowBadges, ChatMemberColor, ChatSuperChatColor,
WebUri, MediaPath, MediaIsLooping, MediaVolume, MediaPlaybackState,
AlertVideoAssetId, AlertVideoPath, AlertUseDefaultVideo, AlertShowTicker, AlertVideoVolume, SortOrder,
AlertDisplayMethod, IsBrandLogo
AlertDisplayMethod, IsBrandLogo, BlurAmount
FROM Source ORDER BY SortOrder
""";
using var reader = cmd.ExecuteReader();