4 * map page numbers to file position
8 #include <X11/IntrinsicP.h>
9 #include <X11/StringDefs.h>
19 MapPageNumberToFileMap (dw
, number
)
25 for (m
= dw
->dvi
.file_map
; m
; m
=m
->next
)
26 if (m
->page_number
== number
)
44 ForgetPagePositions (dw
)
47 DestroyFileMap (dw
->dvi
.file_map
);
52 RememberPagePosition(dw
, number
)
58 if (!(m
= MapPageNumberToFileMap (dw
, number
))) {
59 m
= (DviFileMap
*) XtMalloc (sizeof *m
);
60 m
->page_number
= number
;
61 m
->next
= dw
->dvi
.file_map
;
65 m
->position
= ftell (dw
->dvi
.tmpFile
);
67 m
->position
= ftell (dw
->dvi
.file
);
71 SearchPagePosition (dw
, number
)
77 if (!(m
= MapPageNumberToFileMap (dw
, number
)))
83 FileSeek(dw
, position
)
87 if (dw
->dvi
.tmpFile
) {
88 dw
->dvi
.readingTmp
= 1;
89 fseek (dw
->dvi
.tmpFile
, position
, 0);
91 fseek (dw
->dvi
.file
, position
, 0);