[Poppler-bugs] [Bug 70671] New: cairo_surface_create_similar_clip can create negative surfaces

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sun Oct 20 07:08:11 PDT 2013


https://bugs.freedesktop.org/show_bug.cgi?id=70671

          Priority: medium
            Bug ID: 70671
          Assignee: poppler-bugs at lists.freedesktop.org
           Summary: cairo_surface_create_similar_clip can create negative
                    surfaces
          Severity: major
    Classification: Unclassified
                OS: Linux (All)
          Reporter: michael at cadilhac.name
          Hardware: x86 (IA32)
            Status: NEW
           Version: unspecified
         Component: cairo backend
           Product: poppler

Created attachment 87877
  --> https://bugs.freedesktop.org/attachment.cgi?id=87877&action=edit
This PDF triggers a cairo error

The attached PDF is a single page containing an XObject which prints a Knockout
transparency group, which itself prints a non-Knockout transparency group.  It
is not properly drawn using evince because of a cairo error.

In greater details:

With this PDF, in cairo_surface_create_similar_clip, the surface resulting
from:

  result = cairo_surface_create_similar (target, content, width, height);

is defined with a negative height.  This in turn leads to the following Cairo
error when drawing the group:

  BAD status: invalid value (typically too big) for the size of the input
(surface, pattern, etc.)

I'm not sure what the comment:

  //XXX: negative matrix

in the body of the function is refering to, but indeed, there's a sign problem.


Adding abs(...) around the two substractions (CairoOutputDev.cc:1425 and next)
does the trick --- the PDF is rendered correctly ---, but I'm not sure this is
the right fix.

(Using git poppler)

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/poppler-bugs/attachments/20131020/d8f9cf7c/attachment.html>


More information about the Poppler-bugs mailing list