[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#37719: [gs-devel] Recent ghostscript broke preview-latex again
From: |
Chris Liddell |
Subject: |
bug#37719: [gs-devel] Recent ghostscript broke preview-latex again |
Date: |
Mon, 14 Oct 2019 15:41:35 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0 |
On 14/10/2019 12:40, Ikumi Keita wrote:
> Hi Chris,
>
>>>>>> Chris Liddell <address@hidden> writes:
>> Before you call .locksafe, adding something like:
>
>> systemdict /.addcontrolpath known
>> {
>> /PermitFileReading (bbb.pdf) .addcontrolpath
>> /PermitFileReading (bbb.prv/tmp0UabeI/preview.dsc) .addcontrolpath
>> } if
>
> Thank you, this improves the situation. However, preview-latex still
> does not work. Ghostscript does not produce PNG files we expect and
> sometimes raises errors. I quote a sample error at the last of this
> message.
>
> I have an impression that gs fails to write out PNG files at specified
> paths due to restricted permission about file operation.
>
> Regards,
> Ikumi Keita
>
> /home/keita/gs/bin/gs -dOutputFile\=\(bbb.prv/tmp821SQO/pr1-2.png\) -q
> -dDELAYSAFER -dNOPAUSE -DNOPLATFONTS -dPrinted -dTextAlphaBits\=4
> -dGraphicsAlphaBits\=4 -sDEVICE\=png16m -r108.606x108.587
> GS>systemdict /.addcontrolpath known {
> /PermitFileReading (bbb.pdf) .addcontrolpath
> /PermitFileReading (bbb.prv/tmp821SQO/preview.dsc) .addcontrolpath
> } if
> {<</PermitFileReading[(bbb.pdf)(bbb.prv/tmp821SQO/preview.dsc)]>>
> setuserparams .locksafe} stopped pop {DELAYSAFER{.setsafe}if}stopped
> pop/.preview-BP currentpagedevice/BeginPage get dup null eq{pop{pop}bind}if
> def<</BeginPage{currentpagedevice/PageSize get dup 0 get 1 ne exch 1 get 1 ne
> or{.preview-BP gsave 1 1 0.878431 setrgbcolor clippath fill grestore
> }{pop}ifelse}bind/PageSize[1 1]>>setpagedevice/preview-do{/.preview-ST[count
> 4 roll save]def dup length 0 eq{pop}{setpagedevice}{ifelse
> exec}stopped{handleerror quit}if .preview-ST aload pop restore}bind def
> (bbb.prv/tmp821SQO/preview.dsc)(r)file /.preview-ST 1 index def dup 0
> setfileposition 499()/SubFileDecode filter cvx exec .preview-ST dup dup 550
> setfileposition 52()/SubFileDecode filter cvx<<>>preview-do
>
> **** WARNING: .lockfileaccess or .setsafe called ****
> **** when file access controls are already active ****
> GPL Ghostscript GIT PRERELEASE 9.29: **** Could not open the file
> 'bbb.prv/tmp821SQO/pr1-1.png'.
> Error: /invalidfileaccess in --showpage--
> Operand stack:
> 1 true
> Execution stack:
> %interp_exit .runexec2 --nostringval-- showpage --nostringval--
> 2 %stopped_push --nostringval-- showpage %loop_continue showpage
> showpage false 1 %stopped_push .runexec2 --nostringval-- showpage
> --nostringval-- 2 %stopped_push --nostringval-- showpage false
> 1 %stopped_push --nostringval-- showpage 4 1 3 showpage
> %for_pos_int_continue 1965 1 7 %oparray_pop showpage showpage
> 1824 0 9 %oparray_pop showpage showpage
> Dictionary stack:
> --dict:731/1123(ro)(G)-- --dict:1/20(G)-- --dict:84/200(L)--
> --dict:84/200(L)-- --dict:135/256(ro)(G)-- --dict:315/325(ro)(G)--
> --dict:33/64(L)-- --dict:6/9(L)-- --dict:6/20(L)--
> Current allocation mode is local
> Last OS error: Permission denied
The warning is benign, although it does indicate that you can calling
.setsafe when SAFER is already active.
But there are some things that are confusing.
First, on your command line, your output file is in parentheses, but the
file name in the error message does not have parentheses. Secondly, the
file name on your command line is "bbb.prv/tmp821SQO/pr1-2.png" but the
one in the error is "bbb.prv/tmp821SQO/pr1-1.png". So, clearly not the
same file.
The revised file access controls includes control over output files, so
it is important the file names match, in these circumstances.
If you are changing the output file name dynamically, from the one on
the command line, you could add the output directory to the permitted
write directories:
systemdict /.addcontrolpath known
{
/PermitFileReading (bbb.pdf) .addcontrolpath
/PermitFileReading (bbb.prv/tmp0UabeI/preview.dsc) .addcontrolpath
/PermitFileWriting (bbb.prv/tmp821SQO/) .addcontrolpath
} if
(Note the trailing '/' on the writable path.
This can also be done on the command line:
--permit-file-write="bbb.prv/tmp821SQO/"
Chris
- bug#37719: 11.91; preview-latex not working (again?), (continued)
- bug#37719: 11.91; preview-latex not working (again?), Ikumi Keita, 2019/10/13
- bug#37719: 11.91; preview-latex not working (again?), Dylan Thurston, 2019/10/13
- bug#37719: 11.91; preview-latex not working (again?), Ikumi Keita, 2019/10/13
- bug#37719: 11.91; preview-latex not working (again?), Dylan Thurston, 2019/10/13
- bug#37719: 11.91; preview-latex not working (again?), Ikumi Keita, 2019/10/15
- bug#37719: 11.91; preview-latex not working (again?), Dylan Thurston, 2019/10/16
- bug#37719: 11.91; preview-latex not working (again?), Ikumi Keita, 2019/10/16
bug#37719: Recent ghostscript broke preview-latex again, Ikumi Keita, 2019/10/13
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Chris Liddell, 2019/10/14
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Ikumi Keita, 2019/10/14
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again,
Chris Liddell <=
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Ikumi Keita, 2019/10/14
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Chris Liddell, 2019/10/14
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Ikumi Keita, 2019/10/15
- bug#37719: [gs-devel] Recent ghostscript broke preview-latex again, Chris Liddell, 2019/10/15