diff options
author | Karl Berry <karl@freefriends.org> | 2022-04-13 00:36:11 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2022-04-13 00:36:11 +0000 |
commit | 69a601cd695503eabaf7077b9bc492764f7d62eb (patch) | |
tree | 3db3940d92e94d1e80dd976b9098f9ee1f01e6e0 /Build | |
parent | b60cb6baabb1772d6fac621f08c892010aa43135 (diff) |
write forms after images, to avoid recursive clobbering
git-svn-id: svn://tug.org/texlive/trunk@63017 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/ChangeLog | 7 | ||||
-rw-r--r-- | Build/source/texk/web2c/pdftexdir/pdftex.web | 12 |
2 files changed, 15 insertions, 4 deletions
diff --git a/Build/source/texk/web2c/pdftexdir/ChangeLog b/Build/source/texk/web2c/pdftexdir/ChangeLog index 48527b08c72..64982dee465 100644 --- a/Build/source/texk/web2c/pdftexdir/ChangeLog +++ b/Build/source/texk/web2c/pdftexdir/ChangeLog @@ -1,3 +1,10 @@ +2022-04-12 Marcel Kr\"uger <tex@2krueger.de> + + * pdftex.web (Write out resource list): Write forms last, + to avoid recursive xforms clobbering |pdfpagegroupval|. + https://tug.org/pipermail/pdftex/2022-April/009276.html + https://tug.org/pipermail/pdftex/2022-April/009280.html + 2022-03-21 Karl Berry <karl@tug.org> * TL'22 release. diff --git a/Build/source/texk/web2c/pdftexdir/pdftex.web b/Build/source/texk/web2c/pdftexdir/pdftex.web index 0e06342a728..a28adc47273 100644 --- a/Build/source/texk/web2c/pdftexdir/pdftex.web +++ b/Build/source/texk/web2c/pdftexdir/pdftex.web @@ -1,4 +1,4 @@ -% Copyright 1996-2021 Han Th\^e\llap{\raise 0.5ex\hbox{\'{}}} Th\`anh, +% Copyright 1996-2022 Han Th\^e\llap{\raise 0.5ex\hbox{\'{}}} Th\`anh, % <thanh@@pdftex.org> % This file is part of pdfTeX. @@ -19166,10 +19166,14 @@ pdf_end_text; pdfshipoutend(shipping_page); pdf_end_stream -@ @<Write out resource lists@>= +@ We need to write forms last, since the recursive call to |ship_out| +would reset global state such as |pdfpagegroupval|, which is needed +while writing images. + +@<Write out resource lists@>= @<Write out pending raw objects@>; -@<Write out pending forms@>; -@<Write out pending images@> +@<Write out pending images@>; +@<Write out pending forms@> @ @<Write out resources dictionary@>= pdf_begin_dict(pdf_last_resources, 1); |