enscript(1) does its job, but seg faults at the end

Kevin O'Gorman kogorman at gmail.com
Tue Nov 16 16:49:43 UTC 2010


I've got an up-to-date 10.4.1 system, where the enscript(1) command even in
its simplest form ("enscript junk") works, gives me the expected printed
output on my default printer, but ends with a SEGMENTATION FAULT report.
File "junk" is just the fancy-printer script I use (drived from
enscript.hdr), trimmed down to 113 lines (any shorter and the seg fault does
not occur.)

The last few lines are
    %    %Format: name format
    %    Define  a  new  string  constant  name  according to the format
    %    string format.  Format string start from  the  first  non-space
    %    character  and  it  ends to the end of the line.  Format string
    %    can contain general ‘%’ escapes  and  input  file  related  ‘$’

I ran "strace -f -o es enscript junk" and got these lines at the end of the
output
(looks like a null dereference, or jump 0):

27862 open("/usr/share/locale/en.UTF8/LC_MESSAGES/enscript.mo", O_RDONLY) =
-1 E+++  NOENT (No such file or directory)
27862 open("/usr/share/locale/en.utf8/LC_MESSAGES/enscript.mo", O_RDONLY) =
-1 E+++  NOENT (No such file or directory)
27862 open("/usr/share/locale/en/LC_MESSAGES/enscript.mo", O_RDONLY) = -1
ENOENT+++   (No such file or directory)
27862 open("/usr/share/locale-langpack/en_US.UTF8/LC_MESSAGES/enscript.mo",
O_RD+++  ONLY) = -1 ENOENT (No such file or directory)
27862 open("/usr/share/locale-langpack/en_US.utf8/LC_MESSAGES/enscript.mo",
O_RD+++  ONLY) = -1 ENOENT (No such file or directory)
27862 open("/usr/share/locale-langpack/en_US/LC_MESSAGES/enscript.mo",
O_RDONLY)+++   = -1 ENOENT (No such file or directory)
27862 open("/usr/share/locale-langpack/en.UTF8/LC_MESSAGES/enscript.mo",
O_RDONL+++  Y) = -1 ENOENT (No such file or directory)
27862 open("/usr/share/locale-langpack/en.utf8/LC_MESSAGES/enscript.mo",
O_RDONL+++  Y) = -1 ENOENT (No such file or directory)
27862 open("/usr/share/locale-langpack/en/LC_MESSAGES/enscript.mo",
O_RDONLY) = +++  -1 ENOENT (No such file or directory)
27862 write(2, "[ 2 pages * 1 copy ]", 20) = 20
27862 write(2, " sent to printer\n", 17) = 17
27862 --- SIGSEGV (Segmentation fault) @ 0 (0) ---
27862 +++ killed by SIGSEGV +++

WTF?

-- 
Kevin O'Gorman, PhD
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.ubuntu.com/archives/ubuntu-users/attachments/20101116/b77b9dd5/attachment.html>


More information about the ubuntu-users mailing list