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
)
42 ForgetPagePositions (dw
)
45 DestroyFileMap (dw
->dvi
.file_map
);
49 RememberPagePosition(dw
, number
)
55 if (!(m
= MapPageNumberToFileMap (dw
, number
))) {
56 m
= (DviFileMap
*) XtMalloc (sizeof *m
);
57 m
->page_number
= number
;
58 m
->next
= dw
->dvi
.file_map
;
62 m
->position
= ftell (dw
->dvi
.tmpFile
);
64 m
->position
= ftell (dw
->dvi
.file
);
67 SearchPagePosition (dw
, number
)
73 if (!(m
= MapPageNumberToFileMap (dw
, number
)))
78 FileSeek(dw
, position
)
82 if (dw
->dvi
.tmpFile
) {
83 dw
->dvi
.readingTmp
= 1;
84 fseek (dw
->dvi
.tmpFile
, position
, 0);
86 fseek (dw
->dvi
.file
, position
, 0);