From bb51b61cfc3fcb367f52d31948039a1468fbcf80 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Wed, 17 Mar 2021 03:01:06 +0000 Subject: CTAN sync 202103170301 --- macros/latex/required/firstaid/changes.txt | 8 +++++ .../latex2e-first-aid-for-external-files.dtx | 40 +++++++++++++++++++-- .../latex2e-first-aid-for-external-files.pdf | Bin 201643 -> 205202 bytes 3 files changed, 46 insertions(+), 2 deletions(-) (limited to 'macros/latex/required') diff --git a/macros/latex/required/firstaid/changes.txt b/macros/latex/required/firstaid/changes.txt index 5d70ebc2cb..c97129e31f 100644 --- a/macros/latex/required/firstaid/changes.txt +++ b/macros/latex/required/firstaid/changes.txt @@ -1,3 +1,11 @@ +2021-03-15 Frank Mittelbach + + * latex2e-first-aid-for-external-files.dtx: + bigfoot incorrectly assumes insertions being ordered, so this is + enforced for now. + We also fix \FN@allmarks which can blow as it loops using the + wrong counter (so the loops runs a random number of times) + 2020-12-14 Frank Mittelbach * latex2e-first-aid-for-external-files.dtx: diff --git a/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.dtx b/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.dtx index 9dcedaf435..1ce357d6d3 100644 --- a/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.dtx +++ b/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.dtx @@ -110,8 +110,8 @@ % \end{macrocode} % % \begin{macrocode} -\def\LaTeXFirstAidDate{2020/12/14} -\def\LaTeXFirstAidVersion{v1.0i} +\def\LaTeXFirstAidDate{2021/03/15} +\def\LaTeXFirstAidVersion{v1.0j} % \end{macrocode} % % \begin{macrocode} @@ -397,6 +397,42 @@ % \end{macrocode} % % +% \subsection{The \pkg{bigfoot} first aid} +% +% The \pkg{bigfoot} packages makes the assumption that two +% \cs{newinsert} allocations have a recognisable order in their +% numbers, the second one has a lower number. This was correct in +% the classic \TeX{} implementation but with the extended +% allocation possibilities of all modern engines is no longer the +% case and there is a point where the allocations take a ``jump'' +% breaking the odering assumption. These days we are fairly close +% to that point and depending on how many packages are loaded +% before \pkg{bigfoot} the package breaks. +% +% This firstaid therefore jumps over the problematical point by +% pushing the count allocation to a safe value if necessary. +% \begin{macrocode} +\AddToHook{file/after/bigfoot.sty}{% + \ifnum\count10<\insc@unt + \global\count10=\insc@unt + \fi +% \end{macrocode} +% We also correct a bug that \pkg{bigfoot} tries to shift mark +% registers, but in \LaTeX{} (at least since 2015) the allocation +% number is not 266, so it does that to a random number of mark +% registers (which sometimes blows up depending on the value in 266). +% \begin{macrocode} + \def\FN@allmarks#1{\@elt{#1}% + \ifnum#1<\count256 %<--- problem: 266 isn't the counter for marks + \expandafter\FN@allmarks\expandafter{\number\numexpr#1+\@ne}% + \fi}% +} +% \end{macrocode} +% +% +% +% +% % \subsection[Temporary fixes for the kernel (until the next % patch-level release)] % {Temporary fixes for the kernel \\ diff --git a/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.pdf b/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.pdf index 6affd3174a..1bf28e4760 100644 Binary files a/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.pdf and b/macros/latex/required/firstaid/latex2e-first-aid-for-external-files.pdf differ -- cgit v1.2.3