diff options
Diffstat (limited to 'macros/latex/base/ltclass.dtx')
-rw-r--r-- | macros/latex/base/ltclass.dtx | 26 |
1 files changed, 21 insertions, 5 deletions
diff --git a/macros/latex/base/ltclass.dtx b/macros/latex/base/ltclass.dtx index e771044e66..b639ae9410 100644 --- a/macros/latex/base/ltclass.dtx +++ b/macros/latex/base/ltclass.dtx @@ -33,7 +33,7 @@ %<*driver> % \fi \ProvidesFile{ltclass.dtx} - [2020/10/08 v1.3s LaTeX Kernel (Class & Package Interface)] + [2020/10/18 v1.3t LaTeX Kernel (Class & Package Interface)] % \iffalse \documentclass{ltxdoc} \GetFileInfo{ltclass.dtx} @@ -943,8 +943,9 @@ \def\@pr@videpackage[#1]{% \expandafter\protected@xdef % <-- protected... \csname ver@\@currname.\@currext\endcsname{#1}% Loaded package - \expandafter\protected@xdef % <-- protected... - \csname ver@\@currpkg@reqd\endcsname{#1}% Requested package + \expandafter\let + \csname ver@\@currpkg@reqd\expandafter\endcsname % Requested package + \csname ver@\@currname.\@currext\endcsname \ifx\@currext\@clsextension \typeout{Document Class: \@gtempa\space#1}% \else @@ -1064,13 +1065,16 @@ % \begin{macro}{\PassOptionsToClass} % If the package has been loaded, we check that it was first loaded with % the options. Otherwise we add the option list to that of the package. +% \changes{v1.3t}{2020/10/18}{Drop path from \cs{input@path} (gh/414).} % \begin{macrocode} %</2ekernel> %<latexrelease>\IncludeInRelease{2020/10/01}{\@pass@ptions} %<latexrelease> {Add file replacement in \@pass@ptions}% %<*2ekernel|latexrelease> \def\@pass@ptions#1#2#3{% - \edef\reserved@a{\@expl@@@filehook@resolve@file@subst@@w #3.#1\@nil}% + \@expl@@@filehook@set@curr@file@@nNN + {\@expl@@@filehook@resolve@file@subst@@w #3.#1\@nil}% + \reserved@a\reserved@b \expandafter\xdef\csname opt@\reserved@a\endcsname{% \@ifundefined{opt@\reserved@a}\@empty {\csname opt@\reserved@a\endcsname,}% @@ -1801,7 +1805,13 @@ % \cs{@currext} are used we lose track of the substitution, so % \cs{CurrentFile} and \cs{CurrentFileUsed} will be (incorrectly) % the same. +% +% \changes{v1.3t}{2020-10-11}{Restore \cs{@currpkg@reqd} after +% finished loading a package file (gh/408).} % \begin{macrocode} + \expandafter\@swaptwoargs\expandafter + {\expandafter{\@currpkg@reqd}}% + {% < \edef\@currpkg@reqd{\@currname.\@currext}% \ifx\CurrentFile\CurrentFileUsed \else @@ -1810,6 +1820,8 @@ \edef\@currext{\string@makeletter\filename@ext}% \fi \load@onefile@withoptions{#2}% + \def\@currpkg@reqd%{\@currpkg@reqd} + }% > % \end{macrocode} % Now just clean up and exit. % \begin{macrocode} @@ -1836,7 +1848,11 @@ \@popfilename \@reset@ptions} % \end{macrocode} -% +% +% \begin{macrocode} +\let\@currpkg@reqd\@empty +% \end{macrocode} +% % \begin{macrocode} \@onlypreamble\@onefilewithoptions % \end{macrocode} |