summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Resource/Init/pdf_main.ps38
1 files changed, 23 insertions, 15 deletions
diff --git a/Resource/Init/pdf_main.ps b/Resource/Init/pdf_main.ps
index 09f87353c..4d59d9c53 100644
--- a/Resource/Init/pdf_main.ps
+++ b/Resource/Init/pdf_main.ps
@@ -1952,22 +1952,30 @@ currentdict /xref-char-dict undef
1952 Trailer /Root knownoget { 1952 Trailer /Root knownoget {
1953 /Pages knownoget { 1953 /Pages knownoget {
1954 10 dict begin 1954 10 dict begin
1955 /Count pdfpagecount def
1955 /verify_page_tree_recursive { 1956 /verify_page_tree_recursive {
1956 dup 1 def 1957 Count 0 gt {
1957 dup /Kids knownoget { 1958 dup 1 def
1958 { oforce 1959 dup /Kids knownoget {
1959 dup //null ne { 1960 { oforce
1960 currentdict 1 index known { 1961 dup //null ne {
1961 ( **** Error: there's a loop in the Pages tree. Giving up.\n) pdfformaterror 1962 currentdict 1 index known {
1962 /verify_page_tree cvx /syntaxerror signalerror 1963 ( **** Error: there's a loop in the Pages tree. Giving up.\n) pdfformaterror
1963 } if 1964 /verify_page_tree cvx /syntaxerror signalerror
1964 verify_page_tree_recursive 1965 } if
1965 } { 1966 verify_page_tree_recursive
1966 pop 1967 } {
1967 } ifelse 1968 pop
1968 } forall 1969 } ifelse
1969 } if 1970 } forall
1970 currentdict exch undef 1971 } {
1972 /Count Count 1 sub def
1973 }ifelse
1974 currentdict exch undef
1975 } {
1976 pop
1977 ( **** Error: Too many pages in Page tree.\n) pdfformaterror
1978 } ifelse
1971 } def 1979 } def
1972 verify_page_tree_recursive 1980 verify_page_tree_recursive
1973 end 1981 end