のサブクラスを使用してNSPersistentDocument
データを保存する OS X アプリケーションがあります。Core Data の永続ストア タイプは SQLite です。Xcode でコア データを使用してドキュメント ベースのアプリケーションの新しいプロジェクトを作成するときに作成される標準のメニュー コマンドに依存しています。
このアプリケーションは約 2 年前から存在し、常に進化しています。ちょうど今日、私の最新バージョンで「名前を付けて保存」が機能しないことを発見しました。動作は次のとおりです。
- 新しいドキュメントを作成し、いくつかのデータを入力します。
- ドキュメントを保存して閉じ、再度開きます。すべて順調。次に、[名前を付けて保存] を選択し、ファイルの新しい名前と場所を選択します。名前が変更され、さらにデータを入力できます。
- ドキュメントを保存して閉じ、再度開くと、完全に空です。
- 元のドキュメントを開くと、名前を付けて保存したドキュメントにあるはずのすべての変更がそこにあります。
- アプリケーションがクラッシュしたり、エラーが発生したりすることはありません。
かつては正しく機能していたと確信しています。プログラムの最初の「公式」バージョンを試しましたが、動作は同じです (間違っています)。
編集: Core Data エンティティを 1 つだけ使用して、同じタイプの新しい Xcode プロジェクトを作成しました。動作は同じです。私のアプリケーションとの唯一の違いは、新しいプロジェクトが「名前を付けて保存」ではなく、10.7 Lion で導入された新しい「複製」メニュー コマンドを自動的に使用したことです。そのため、オプション キーを押して [名前を付けて保存] を選択する必要があります。
10.9.3 でのみテストしましたが、2 つの異なる Mac でテストしました。誰がどこを見ればいいのか考えていますか?
編集 2:特定のアカウント (2 台のマシン上の私のアカウント) に関連しているようです。別のアカウントで正しく動作します。