From a01359189b32c60c2d55b039f7aefd6c3ce0ebde Mon Sep 17 00:00:00 2001 From: Jay Berkenbilt Date: Fri, 4 Jan 2019 10:17:33 -0500 Subject: Fix dangling references (fixes #240) On certain operations, such as iterating through all objects and adding new indirect objects, walk through the entire object structure and explicitly resolve any indirect references to non-existent objects. That prevents new objects from springing into existence and causing the previously dangling references to point to them. --- ChangeLog | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'ChangeLog') diff --git a/ChangeLog b/ChangeLog index 2c73731a..124227ea 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2019-01-04 Jay Berkenbilt + + * Detect and recover from dangling references. If a PDF file + contained an indirect reference to a non-existent object (which is + valid), when adding a new object to the file, it was possible for + the new object to take the object ID of the dangling reference, + thereby causing the dangling reference to point to the new object. + This case is now prevented. Fixes #240. + 2019-01-03 Jay Berkenbilt * Fix behavior of form field value setting to handle the following -- cgit v1.2.3-54-g00ecf