all devices regression report - 2018-01-13-03:46:31 - 112021a361e9300d9cd0cde0bfc9e691a6e5d0d7

[email protected] Sat, 13 Jan 2018 03:46:31 -0800 (PST)
Newsgroups gmane.comp.printing.ghostscript.regression
Message-ID <20180113114632.056F120404FA@i7>
Differences in all devices errors using gs/examples files

Previous Revision: 3012651caace0d2d4dd26631e0e10d81fdeab181
 Current Revision: 112021a361e9300d9cd0cde0bfc9e691a6e5d0d7

commit 112021a361e9300d9cd0cde0bfc9e691a6e5d0d7
Author:     Ken Sharp <[email protected]>
AuthorDate: Sat Jan 13 10:45:32 2018 +0000
CommitDate: Sat Jan 13 10:45:32 2018 +0000

    pdf_info.ps - gracefully handle circular Resource references
    
    Although not strictly part of Ghostscript, pdf_info.ps is used by
    customers and this is reasonably easy to improve.
    
    When checking for transparency, pdf_info.ps uses the Ghostscript
    PDF interpreter to do the work. However, other aspects of its operation
    (Media Sizes, Font use) aren't available from the PDF interpreter.
    
    When detecting Font usage, pdf_info.ps walks the Page Resource chain,
    and any the Resource chains of any Pattern or XObject Resources used
    on that page, as well as the Resources for any Annots (and also any
    XObject or Pattern Resources used by the Annots). If any of these
    Resource chains contains a circular reference (which they absolutely
    should not) then pdf_info will enter a loop and process unwil it
    exceeds the execution stack limit, throwing an error.
    
    In this commit we borrow the technique used by the PDF interpreter, we
    create a dictionary and every object which we inspect has its object
    number stored in that dictionary. Whenever we encounter a new object
    we first check to see if its number is in that dictionary. If it is, we
    know we've seen it before and this is (possibly) a circular reference.
    
    Even if it is not a circular reference, we've already checked that chain
    so we don't need to check it again.
    
    This isn't cluster checked.

toolbin/pdf_info.ps

new errors:

errors that went away:

errors that are not whitelisted:
=== ghostpdl/examples/transparency_example.ps === cp50 ===
=== ghostpdl/examples/transparency_example.ps === psdrgb ===