[gs-bugs] [Bug 692368] Segmentation fault when rasterizing a PDF file

bugzilla-daemon at ghostscript.com bugzilla-daemon at ghostscript.com
Wed Jul 27 23:14:54 UTC 2011


http://bugs.ghostscript.com/show_bug.cgi?id=692368

Robin Watts <robin.watts at artifex.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED

--- Comment #3 from Robin Watts <robin.watts at artifex.com> 2011-07-27 23:14:53 UTC ---
Fixed in:

commit b3dbb094608e2d5699c6d77d42f4919c0299a02a
Author: Robin Watts <Robin.Watts at artifex.com>
Date:   Wed Jul 27 16:25:19 2011 +0100

    Fix Bug 692368; SEGV with clist transparency pattern in clist rendering.

    The invocation/file given in the bug uses banded rendering (clist).
    While drawing a band, it uses a pattern with transparency, that is
    itself rendered by a clist (using the new pattern clist code).

    A fill rectangle is being done that tries to call the pattern clist
    tiling code without the fill_trans_buffer having been setup, and
    this causes a SEGV.

    The reason for this appears to be that the device used by the
    banded isn't a pdf14 device - instead it's a clipper device wrapping
    the pdf14 device. The clipper device does not call gx_forward_fill_path,
    but instead calls gx_default_fill_path, meaning that the special
    pdf14 handling done to setup the fill_trans_buffer isn't done.

    Making the commit call onwards to gx_forward_fill_path doesn't solve the
    problem either, as that results in no actual clipping being done.

    The fix, therefore appears to be to implement a clipping version of
    fill_path.

    No cluster differences expected.

-- 
Configure bugmail: http://bugs.ghostscript.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the gs-bugs mailing list