Bug 18254

Summary: Poppler sends Cairo a non-invertible matrix
Product: poppler Reporter: Troy Henderson <thenders>
Component: cairo backendAssignee: poppler-bugs <poppler-bugs>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: medium CC: joepurlings, pvillavi
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:
Attachments: Culprit PDF
Culprit (original) EPS
Ensure font matrix is invertable

Description Troy Henderson 2008-10-27 15:56:53 UTC
Created attachment 19891 [details]
Culprit PDF

EPS has a "fontbox" (sorry that I don't know the technical term) which is yscaled by a factor of 0, and Poppler sends Cairo a non-invertible matrix resulting in the following Cairo error:

cairo context error: invalid matrix (not invertible)

The circle in this PDF fails to render in Evince with Poppler+Cairo since in the PostScript the "yscaled 0" fontbox was drawn before the circle.  It's like Poppler bails out after encountering this issue.
Comment 1 Troy Henderson 2008-10-27 15:57:30 UTC
Created attachment 19892 [details]
Culprit (original) EPS
Comment 2 Adrian Johnson 2008-11-12 02:15:37 UTC
Created attachment 20245 [details] [review]
Ensure font matrix is invertable

The problem is cairo is passed a non invertable font matrix. Fix attached.
Comment 3 Adrian Johnson 2008-11-12 02:16:00 UTC
*** Bug 18429 has been marked as a duplicate of this bug. ***
Comment 4 Adrian Johnson 2008-11-12 02:22:38 UTC
*** Bug 18238 has been marked as a duplicate of this bug. ***
Comment 5 Carlos Garcia Campos 2008-11-12 02:37:37 UTC
Pushed! Thanks Adrian :-)

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.