diff options
-rw-r--r-- | Resource/Init/pdf_main.ps | 38 |
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 |