mirror of
https://github.com/storytold/pdfcraft.git
synced 2026-10-25 18:47:22 -06:00
fix(redact): removed links and comments leave the structure tree too (#2447)
Remove Hidden Information and Sanitize took a link or comment off its page's /Annots, but a tagged PDF's structure tree still referenced it through an /OBJR, so the full rewrite kept the annotation, its URL or text included, while link_list reported none. The annotations removed from every page are now collected, and tags::drop_object_refs drops the structure elements' object references to them (direct or indirect, array or single kid), with the same seen-set bound as tags::clean. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RUNQSPVXx3dDBabRZHAnjz
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
99941daa5a
commit
2e2b5e7bf4
@@ -5788,8 +5788,8 @@ milestone = "M8"
|
||||
status = "shipped"
|
||||
commands = ["protect.remove_hidden"]
|
||||
tools = ["doc_hidden_info", "doc_remove_hidden"]
|
||||
evidence = ["crates/redact/src/tests.rs::hidden_information_is_counted_and_removed", "crates/ui-egui/tests/ui_group/redact.rs::removing_hidden_information_and_sanitizing", "crates/automation/tests/automation.rs::removing_hidden_information_through_tools"]
|
||||
notes = "metadata, attachments, comments, form fields (flattened), hidden text, hidden layers, bookmarks, links/actions/scripts, private data; overlapping objects and cropped content pending"
|
||||
evidence = ["crates/redact/src/tests.rs::hidden_information_is_counted_and_removed", "crates/ui-egui/tests/ui_group/redact.rs::removing_hidden_information_and_sanitizing", "crates/automation/tests/automation.rs::removing_hidden_information_through_tools", "crates/redact/src/tests.rs::removed_links_and_comments_leave_the_structure_tree_and_the_saved_file"]
|
||||
notes = "metadata, attachments, comments, form fields (flattened), hidden text, hidden layers, bookmarks, links/actions/scripts (with the structure tree's references to removed links and comments, #2447), private data; overlapping objects and cropped content pending"
|
||||
|
||||
[[feature]]
|
||||
id = "protect.sanitize"
|
||||
|
||||
Reference in New Issue
Block a user