[gs-bugs] [Bug 691458] New: Odd dependency of currentpagedevice on letter / a4 etc

bugzilla-daemon at ghostscript.com bugzilla-daemon at ghostscript.com
Wed Jul 14 15:42:23 UTC 2010


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

           Summary: Odd dependency of currentpagedevice on letter / a4 etc
           Product: Ghostscript
           Version: 8.71
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P4
         Component: PS Interpreter
        AssignedTo: alex.cherepanov at artifex.com
        ReportedBy: mjr19 at cam.ac.uk
         QAContact: gs-bugs at ghostscript.com
   Estimated Hours: 0.0


I find the output for the following code sequence surprising:

gs -c '/a4{} def (png16m) selectdevice currentpagedevice quit'

GPL Ghostscript 8.71 (2010-02-10)
Copyright (C) 2010 Artifex Software, Inc.  All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Error: /rangecheck in --currentpagedevice--
Operand stack:
 (etc)

I cannot see why '(png16m) selectdevice currentpagedevice' should fail if
a4 is defined to a null procedure. It works fine if the '/a4{} def' is omitted.

As setpagedevice includes an implicit currentpagedevice,

gs -c '/a4{} def (png16m) selectdevice <<>> setpagedevice quit'

also fails for any dictionary. The error occurs if any of the papersize
operators known to gs is redefined (a3, letter, a4small, etc.) It seems to
occur with most output devices too (png16m can be replaced by x11). It seems
that something is iterating over .papertypenames and making assumptions about
the form of the procedures defined there.

MJR

-- 
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