diff --git a/src/library/library.cr b/src/library/library.cr index 6cf8c32..8029fcb 100644 --- a/src/library/library.cr +++ b/src/library/library.cr @@ -153,13 +153,15 @@ class Library title = @title_hash[title_id] existence = title.examine examine_context unless existence - examine_context["deleted_title_ids"].concat title.deep_titles.map &.id + examine_context["deleted_title_ids"].concat [title_id] + title.deep_titles.map &.id examine_context["deleted_entry_ids"].concat title.deep_entries.map &.id - @title_hash.delete title_id end existence end remained_title_dirs = @title_ids.map { |id| title_hash[id].dir } + examine_context["deleted_title_ids"].each do |title_id| + @title_hash.delete title_id + end cache = examine_context["cached_contents_signature"] (Dir.entries @dir) diff --git a/src/library/title.cr b/src/library/title.cr index db2ca30..6bae693 100644 --- a/src/library/title.cr +++ b/src/library/title.cr @@ -102,9 +102,8 @@ class Title title = Library.default.get_title! title_id existence = title.examine context unless existence - context["deleted_title_ids"].concat title.deep_titles.map &.id + context["deleted_title_ids"].concat [title_id] + title.deep_titles.map &.id context["deleted_entry_ids"].concat title.deep_entries.map &.id - Library.default.title_hash.delete title_id end existence end