File not printed "Exception: unknown object type inspecting /Contents key in page dictionary"

Bug #1392048 reported by Rodolfo
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
cups-filters (Ubuntu)
Invalid
Undecided
Unassigned
qpdf (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

Hello. I am trying to print this file:
https://www.dropbox.com/s/jpw5szew0f9z51a/1415820191149.pdf?dl=0

With CUPS 1.7.2 on Lubuntu 14.04. and the HP LaserJet m9050 MFP pcl3, hpcups 3.14.6 PPD.

I haven't been able to print the file

Tags: patch
Revision history for this message
Tobias Hoffmann (smilingthax) wrote :

Exception is thrown in libqpdf

affects: cups-filters (Ubuntu) → qpdf (Ubuntu)
Revision history for this message
Tobias Hoffmann (smilingthax) wrote :

Per PDF Spec, the /contents key in a Page dictionary is optional.
The attached pdf's page 9 has no /contents key.

But QPdfObjectHandle::getPageContents() throws an exception;
cups-filter (pdftopdf) calls it via QPDFObjectHandle::addPageContents().

Revision history for this message
Tobias Hoffmann (smilingthax) wrote :

/Contents is the correct spelling.

Revision history for this message
Jay Berkenbilt (ejb) wrote :

I guess getPageContents should just return an empty vector in that case and the documentation should specify that an empty vector might be returned. This is already the case if /Contents is literally an empty array. Thanks for the triage.

Revision history for this message
Rodolfo (bopodelvalle) wrote :

Is there any workaround for this?

Revision history for this message
Rodolfo (bopodelvalle) wrote :

I have confirmed that this happen with all docs genereted by word and with a blank page.

Revision history for this message
Jay Berkenbilt (ejb) wrote :

This is sufficient to fix the problem, I believe. I will pushing a commit with this change to github shortly after I finish ChangeLog updates, etc. I also created a test cases that calls qpdf --show-pages on a file that has a page with no content. I haven't tested in the context of printing, but I believe this should work.

Debian is in freeze right now. I can upload a package with this fix and request a freeze exception, but you will be able to sync from unstable. I'm not going to release a new upstream version for this right this minute, but I can do it soon. That will be harder to get through a debian freeze exception even if the new version just contains one line of code difference...

Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "patch against current HEAD" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Revision history for this message
Jay Berkenbilt (ejb) wrote :

I have just uploaded 5.1.2-2 to debian unstable. You should be able to sync with that version to get a fix.

Revision history for this message
Rodolfo (bopodelvalle) wrote :

Sorry for the newbie question. But how can I make cups-filter use this modification? Because replacing qpdf 5.1.1 with the new 5.1.2-2 doesn't work. cups-filter doesn't use the qpdf at /usr/bin/qpdf.

Maybe this information helps for unfreezing this patch: The software that creates this type of blank pages is Microsoft Word

Thanks

Revision history for this message
Till Kamppeter (till-kamppeter) wrote :

Current version of QPDF (5.1.2-2) in Vivid fixes the problem.

Changed in qpdf (Ubuntu):
status: New → Fix Released
Changed in cups-filters (Ubuntu):
status: New → Invalid
Revision history for this message
Rodolfo (bopodelvalle) wrote :

Is there a way to install this in Trusty?

Revision history for this message
Jay Berkenbilt (ejb) wrote :

I haven't tried it myself, but qpdf has few dependencies, and the ones it has are pretty stable, and qpdf itself is binary compatible between 5.1.1 and 5.1.2. My guess is that you if grabbed the libqpdf13 package from Vivid and tried installing it in trusty, it would most likely work fine.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.