[pdftex] \pdfendlink ended up in different nesting level than \pdfstartlink

Ross Moore ozross at icloud.com
Wed Oct 26 00:38:26 CEST 2022


Hi Aleks, Ulrike and others.


Once you fully understand the problem the fix is trivial,
as it certainly does occur in the use of macros.

All that is needed is a negative penalty before any  \ref  or  \cite  command is used.
e.g.
 in your file  Statement.tex  adjust the definition of  \xRef  .

change the last few lines to read as follows:

>> \ifx\Semafor\ValueOff%
>> \penalty-1\ref{#2}%
>> \else%
>> \penalty-1\citeBib{#1}-\penalty-1\ref{#1-\TheLanguage-#2}%
>> \fi%
  
If you ever get a similar problem, or do not like where the page breaks occur,
then try changing the amount of the  \penalty .
Any negative amount will ensure that a break occurs before the corresponding  \pdfstartlink .

However this could give something that doesn’t look best
— but probably not provided you keep the penalty rather small.

The PDF now works perfectly for me, with the link anchors occurring in the correct places,
at the top of page 276.




Hope this helps.

	Ross

>> From: Ulrike Fischer <news3 at nililand.de>
>> Date: 26 October 2022 at 9:14:24 am AEDT
>> To: pdftex at tug.org
>> Subject: Re: [pdftex] \pdfendlink ended up in different nesting level than \pdfstartlink
>> Reply-To: news3 at nililand.de
>> 
>>  Am Mon, 24 Oct 2022 15:16:43 -0600 schrieb Karl Berry:
>> 
>> > Hi Aleks - thanks for the report.
>> > 
>> > \pdfendlink ended up in different nesting level than \pdfstartlink
>> > 
>> > I get the same fatal error with your source file, on the second run, on
>> > page 276. (After making the many fonts needed.)
>> > 
>> > Unfortunately this is not something that can be fixed at the pdftex
>> > level. pdftex is just reporting what it's seeing in terms of low-level
>> > PDF output. It is the LaTeX macros that need to avoid the issue. And as
>> > I recall, that is not even possible in all cases.
>> 
>> Well the actual error is not directly about \pdfendlink, that is
>> only a warning before the error:
>> 
>> pdfTeX warning: \pdfendlink ended up in different nesting level than
>> \pdfstartlink
>> ! This can't happen (pdfvlistout).
>> <argument> ...shipout:D \box_use:N \l_shipout_box 
>> 
>> \__shipout_drop_firstpage_...
>> l.22 \ShowEq{Left and Right Eigenvalues 1}{cr}
>> 
>> I'm broken. Please show this to someone who can fix can fix
>> 
>> 
>> Beside this we have removed the box which triggered the
>> warning/error some years ago, so here is something new.
>> 
>> > You can report it at https://github.com/latex3/latex2e/issues, but your
>> > document is very complicated. They may not be able to debug the
>> > problem.
>> 
>> My incentive to debug a document with nearly 300 pages, lots of home
>> made commands and using an inputencoding different to utf8 is quite
>> low but I did take a look. 
>> 
>> Getting the nesting warning is quite easy: the document uses paracol
>> and you only need a link going over a page to trigger it.
>> 
>> But the actual error is difficult. The following gives it for me
>> 
>> \documentclass{article}
>> \usepackage[T2A]{fontenc}
>> \usepackage{paracol}
>> \usepackage[colorlinks]{hyperref}
>> \usepackage{lipsum}
>> \textheight=8\baselineskip
>> \begin{document}\showoutput 
>> \begin{paracol}{2}
>> \vspace*{7\baselineskip}
>> aa\\
>> \href{blub}{\lipsum[1]Привет Привет Привевевеве}
>> \switchcolumn
>> \vspace*{7\baselineskip}
>> aa\\
>> bbb\href{blub}{\lipsum[1-2] Привет Привет Привевевеве}
>> \end{paracol}
>> \end{document}
>> 
>> Small changes, e.g. removing colorlinks can avoid it, in other cases
>> one doesn't get an error but pdflatex simply crashes.
>> 
>> 
>> 
>> -- 
>> Ulrike Fischer 
>> http://www.troubleshooting-tex.de/ <http://www.troubleshooting-tex.de/>


Dr Ross Moore
Department of Mathematics and Statistics 
12 Wally’s Walk, Level 7, Room 734
Macquarie University, NSW 2109, Australia
T: +61 2 9850 8955  |  F: +61 2 9850 8114
M:+61 407 288 255  |  E: ross.moore at mq.edu.au
http://www.maths.mq.edu.au

I respectfully acknowledge the traditional custodians of the Macquarie University Land, the Wallumedegal clan of the Darug nation, whose cultures and customs have nurtured and continue to nurture this land since the Dreamtime. I pay my respects to Elders past, present, and future.


CRICOS Provider Number 00002J. Think before you print. 
Please consider the environment before printing this email.

This message is intended for the addressee named and may 
contain confidential information. If you are not the intended 
recipient, please delete it and notify the sender. Views expressed 
in this message are those of the individual sender, and are not 
necessarily the views of Macquarie University. <http://mq.edu.au/>
CRICOS Provider Number 00002J. Think before you print. 
Please consider the environment before printing this email.

This message is intended for the addressee named and may 
contain confidential information. If you are not the intended 
recipient, please delete it and notify the sender. Views expressed 
in this message are those of the individual sender, and are not 
necessarily the views of Macquarie University.
 <http://mq.edu.au/>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://tug.org/pipermail/pdftex/attachments/20221026/faf5ff04/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Screen Shot 2022-10-26 at 9.37.28 am.png
Type: image/png
Size: 154898 bytes
Desc: not available
URL: <https://tug.org/pipermail/pdftex/attachments/20221026/faf5ff04/attachment-0002.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: image001.png
Type: image/png
Size: 4605 bytes
Desc: not available
URL: <https://tug.org/pipermail/pdftex/attachments/20221026/faf5ff04/attachment-0003.png>


More information about the pdftex mailing list.