[gs-bugs] [Bug 691130] New: level 2 setscreen procedure has fatal bug

bugs.ghostscript.com-bugzilla-daemon at ghostscript.com bugs.ghostscript.com-bugzilla-daemon at ghostscript.com
Mon Feb 22 21:48:05 UTC 2010


           Summary: level 2 setscreen procedure has fatal bug
           Product: Ghostscript
           Version: 8.71
          Platform: All
               URL: http://www.xyenterprise.com
        OS/Version: All
            Status: UNCONFIRMED
          Severity: major
          Priority: P4
         Component: General
        AssignedTo: support at artifex.com
        ReportedBy: jdagresta at sdl.com
         QAContact: gs-bugs at ghostscript.com

In Resource/Init/gs_dps2.ps in the .fixsethalftonescreen procedure used by the 
setscreen (and setcolorscreen) procedure, there is a fatal bug which occurs if 
the third 'proc' argument to setscreen is a read-only Halftone type 1 
dictionary ('halftonedict') - the error that occurs is "Unrecoverable error: 
typecheck in setscreen".

Line 139 of gs_dps2.ps is as follows:

    { dup wcheck not { dup length .copydict } if

and should be as follows:

    { dup wcheck not { dup length dict .copydict } if

It's the missing 'dict' operator that causes the typecheck problem. We are 
using GPL as a display engine, so it is not feasible to provide a way to 
reproduce the problem, but the code is obviously wrong by just looking at it 
(and at other places that use .copydict like in gs_init.ps).

------- You are receiving this mail because: -------
You are the QA contact for the bug, or are watching the QA contact.

More information about the gs-bugs mailing list