Conversation
|
Tested on the setup from the original #230 report: Arch Linux, cups 2.4.19, cups-filters 2.0.1, pdfio 1.6.5, ghostscript 10.07.1, Canon MF230 (UFR II LT PPD). Built
Not yet done: a physical print through cupsd (that needs the library installed, which I'm holding off on until this is in a release). Happy to do that too if useful. |
|
Physical print done as well. Temporarily installed this PR's So on this setup the PR fixes the reported regression end to end: pdftopdf output, gstoraster, the Canon UFR II driver and paper. |
|
Your plain and fit print results establish the missing end-to-end check on the original Arch/Canon setup, alongside the filter and raster comparisons. I have recorded them separately from the local macOS regression checks, including that physical two-up printing was not tested. The |
When a PDF resource dictionary repeats a name pointing to the same image, the PDFio callback currently returns
falsefor its recoverable warning. The tested cairo document then loses pages, or keeps the page count while dropping images in the fit/two-up paths.Return
truefor PDFio'sWARNING:messages, forward warnings and errors to the caller's logger/context, and track actual errors separately so warning-only jobs do not triggerjob-error-sheet-when=on-error. Thealwayssetting still adds its requested report page.Addresses #230. Thanks to @jbtheou and @jasonvanwyk for the reports and fixtures, and @michaelrsweet for identifying the callback behavior.
Validation against
c5dc208on macOS arm64 with CUPS 2.3.4 and PDFio 1.6.5 used a targeted native build of the actualpdftopdf.candipp-options.c. The runnable regression checks cover direct copy, page selection, A4 fit, two-up, rendered pixels, logger delivery, both error-sheet settings, and invalid-header rejection. All passed. From that check directory, after the documented dependency setup:These checks are separate from upstream CI. I have not run the full
make check, a Linux distribution build, or a physical printer test. @jasonvanwyk has offered to test a PR build on the original Arch/Canon MF230 setup.Compatibility limit: PDFio 1.6.5 keeps the first duplicate value; QPDF keeps the last. This preserves the repeated-reference cairo case, but deliberately does not claim QPDF-equivalent output when duplicate names point to different objects. The warning remains visible through the supplied logger.