From 59883e3aeccc4c1567f8061b85dded2dd500e72e Mon Sep 17 00:00:00 2001 From: clover caruso Date: Sun, 11 Oct 2026 15:53:12 -0700 Subject: [PATCH] fix(ios): explain notebook deletion save refusals Name the notebook and give a reachability/writability retry action when close refuses deletion. Consume the returned error string; the existing Rust failure path retains the raw diagnostic on stderr. Refs: #125 Assisted-by: gpt-6.1-sol --- apps/ios/Snowbound/Lists.swift | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/apps/ios/Snowbound/Lists.swift b/apps/ios/Snowbound/Lists.swift index 977bcdc4ecefa2475e458350f42b6a88a37c396c..042b74c683c30b77751bd66bb7c23ee9cf663bdd 100644 --- a/apps/ios/Snowbound/Lists.swift +++ b/apps/ios/Snowbound/Lists.swift @@ -416,8 +416,10 @@ final class NotebooksViewController: UICollectionViewController, UIDocumentPicke } var error: UnsafeMutablePointer? let closed = sb_library_close(handle, 10, &error) - let problem = take(error) - if !closed { return ("\(notebook.name): \(problem ?? "Some changes haven’t been saved yet.")", notebooks) } + _ = take(error) + if !closed { + return ("\(notebook.name): Changes haven’t been saved. Check that the notebook is reachable and writable, then try again.", notebooks) + } } var failed: [Notebook] = [] var problems: [String] = [] -- 2.54.0