Skip to content

fix: harden crash-prone code paths#497

Merged
everpcpc merged 8 commits intomainfrom
fix/crash-hardening
Feb 17, 2026
Merged

fix: harden crash-prone code paths#497
everpcpc merged 8 commits intomainfrom
fix/crash-hardening

Conversation

@everpcpc
Copy link
Copy Markdown
Owner

This PR focuses on reducing hard-crash surfaces reported by new users.

Changes:

  • SwiftData: remove duplicate CustomFont entry from Schema and improve ModelContainer init error message (still fails fast on init failure).
  • Storage: avoid Dictionary(uniqueKeysWithValues:) traps by using uniquingKeysWith: in upsert paths.
  • Logging: harden LogStore when SQLite open fails and when sqlite3_column_text returns NULL.
  • Quick Actions: defer handling until DatabaseOperator.shared is available (no db!).
  • Reader: avoid as! traps when dequeuing/making Webtoon cells.
  • Widgets/Settings: remove URL(string:)! force unwraps for links/deep links.
  • Upscaler: add input/output array bounds guards to prevent out-of-bounds access.

Notes:

  • No functional changes intended beyond crash hardening; when SwiftData cannot initialize, the app still terminates early (expected).

@everpcpc everpcpc merged commit 66dd93b into main Feb 17, 2026
6 checks passed
@everpcpc everpcpc deleted the fix/crash-hardening branch February 17, 2026 08:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant