pdftract/crates
jedarden 3a3f376025 feat(pdftract-522li): implement per-thread cycle detection for object resolution
Add thread_local HashSet<ObjRef> tracking for circular reference detection
in the Object Parser. This prevents infinite recursion when PDF objects
contain circular references.

- Created cycle.rs module with RESOLVING thread_local storage
- ResolutionGuard RAII ensures cleanup on drop (even on panic)
- is_resolving() helper for cycle detection
- All 13 cycle tests pass

Closes: pdftract-522li

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-25 12:31:45 -04:00
..
pdftract-cer-diff docs(pdftract-aawrz): add LICENSE-MIT and LICENSE-APACHE files 2026-05-23 10:36:28 -04:00
pdftract-cli feat(pdftract-5bzpg): implement pdftract-grep-1000 CI benchmark skeleton 2026-05-25 08:53:23 -04:00
pdftract-core feat(pdftract-522li): implement per-thread cycle detection for object resolution 2026-05-25 12:31:45 -04:00
pdftract-libpdftract feat(pdftract-3s2i): implement Phase 5.5.2 validation filter 2026-05-24 04:57:17 -04:00
pdftract-py feat(pdftract-3j2u): implement 50 MB size limit + base64 encoding for attachments 2026-05-25 11:42:28 -04:00