25
25
# POSSIBILITY OF SUCH DAMAGE.
26
26
27
27
28
- # This module contains classes used by _writer.py to track links in
29
- # pages being added to the writer until the links can be resolved.
28
+ # This module contains code used by _writer.py to track links in pages
29
+ # being added to the writer until the links can be resolved.
30
30
31
31
from typing import TYPE_CHECKING , List , Optional , Tuple , Union , cast
32
32
@@ -48,7 +48,7 @@ def __init__(self, reference: TextStringObject, source_pdf: "PdfReader") -> None
48
48
49
49
def find_referenced_page (self ) -> Union [IndirectObject , None ]:
50
50
destination = self ._source_pdf .named_destinations .get (str (self ._reference ))
51
- return destination .page if destinatino else None
51
+ return destination .page if destinatinon else None
52
52
53
53
def patch_reference (self , target_pdf : "PdfWriter" , new_page : IndirectObject ) -> None :
54
54
"""target_pdf: PdfWriter which the new link went into"""
@@ -92,7 +92,7 @@ def extract_links(new_page: "PageObject", old_page: "PageObject") -> List[Tuple[
92
92
def _build_link (indirect_object : IndirectObject , page : "PageObject" ) -> Optional [ReferenceLink ]:
93
93
src = cast ("PdfReader" , page .pdf )
94
94
link = cast (DictionaryObject , indirect_object .get_object ())
95
- if link .get ("/Subtype" ) != "/Link" :
95
+ if ( not isinstance ( link , DictionaryObject )) or link .get ("/Subtype" ) != "/Link" :
96
96
return None
97
97
98
98
if "/A" in link :
0 commit comments