/src/mupdf/include/mupdf/fitz/stream.h
Line | Count | Source |
1 | | // Copyright (C) 2004-2021 Artifex Software, Inc. |
2 | | // |
3 | | // This file is part of MuPDF. |
4 | | // |
5 | | // MuPDF is free software: you can redistribute it and/or modify it under the |
6 | | // terms of the GNU Affero General Public License as published by the Free |
7 | | // Software Foundation, either version 3 of the License, or (at your option) |
8 | | // any later version. |
9 | | // |
10 | | // MuPDF is distributed in the hope that it will be useful, but WITHOUT ANY |
11 | | // WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
12 | | // FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more |
13 | | // details. |
14 | | // |
15 | | // You should have received a copy of the GNU Affero General Public License |
16 | | // along with MuPDF. If not, see <https://www.gnu.org/licenses/agpl-3.0.en.html> |
17 | | // |
18 | | // Alternative licensing terms are available from the licensor. |
19 | | // For commercial licensing, see <https://www.artifex.com/> or contact |
20 | | // Artifex Software, Inc., 39 Mesa Street, Suite 108A, San Francisco, |
21 | | // CA 94129, USA, for further information. |
22 | | |
23 | | #ifndef MUPDF_FITZ_STREAM_H |
24 | | #define MUPDF_FITZ_STREAM_H |
25 | | |
26 | | #include "mupdf/fitz/system.h" |
27 | | #include "mupdf/fitz/context.h" |
28 | | #include "mupdf/fitz/buffer.h" |
29 | | |
30 | | /** |
31 | | Return true if the named file exists and is readable. |
32 | | */ |
33 | | int fz_file_exists(fz_context *ctx, const char *path); |
34 | | |
35 | | /** |
36 | | fz_stream is a buffered reader capable of seeking in both |
37 | | directions. |
38 | | |
39 | | Streams are reference counted, so references must be dropped |
40 | | by a call to fz_drop_stream. |
41 | | |
42 | | Only the data between rp and wp is valid. |
43 | | */ |
44 | | typedef struct fz_stream fz_stream; |
45 | | |
46 | | /** |
47 | | Open the named file and wrap it in a stream. |
48 | | |
49 | | filename: Path to a file. On non-Windows machines the filename |
50 | | should be exactly as it would be passed to fopen(2). On Windows |
51 | | machines, the path should be UTF-8 encoded so that non-ASCII |
52 | | characters can be represented. Other platforms do the encoding |
53 | | as standard anyway (and in most cases, particularly for MacOS |
54 | | and Linux, the encoding they use is UTF-8 anyway). |
55 | | */ |
56 | | fz_stream *fz_open_file(fz_context *ctx, const char *filename); |
57 | | |
58 | | /** |
59 | | Do the same as fz_open_file, but delete the file upon close. |
60 | | */ |
61 | | fz_stream *fz_open_file_autodelete(fz_context *ctx, const char *filename); |
62 | | |
63 | | /** |
64 | | Open the named file and wrap it in a stream. |
65 | | |
66 | | Does the same as fz_open_file, but in the event the file |
67 | | does not open, it will return NULL rather than throw an |
68 | | exception. |
69 | | */ |
70 | | fz_stream *fz_try_open_file(fz_context *ctx, const char *name); |
71 | | |
72 | | #ifdef _WIN32 |
73 | | /** |
74 | | Open the named file and wrap it in a stream. |
75 | | |
76 | | This function is only available when compiling for Win32. |
77 | | |
78 | | filename: Wide character path to the file as it would be given |
79 | | to _wfopen(). |
80 | | */ |
81 | | fz_stream *fz_open_file_w(fz_context *ctx, const wchar_t *filename); |
82 | | #endif /* _WIN32 */ |
83 | | |
84 | | /** |
85 | | Return the filename (UTF-8 encoded) from which a stream was opened. |
86 | | |
87 | | Returns NULL if the filename is not available (or the stream was |
88 | | opened from a source other than a file). |
89 | | */ |
90 | | const char *fz_stream_filename(fz_context *ctx, fz_stream *stm); |
91 | | |
92 | | /** |
93 | | Open a block of memory as a stream. |
94 | | |
95 | | data: Pointer to start of data block. Ownership of the data |
96 | | block is NOT passed in. |
97 | | |
98 | | len: Number of bytes in data block. |
99 | | |
100 | | Returns pointer to newly created stream. May throw exceptions on |
101 | | failure to allocate. |
102 | | */ |
103 | | fz_stream *fz_open_memory(fz_context *ctx, const unsigned char *data, size_t len); |
104 | | |
105 | | /** |
106 | | Open a buffer as a stream. |
107 | | |
108 | | buf: The buffer to open. Ownership of the buffer is NOT passed |
109 | | in (this function takes its own reference). |
110 | | |
111 | | Returns pointer to newly created stream. May throw exceptions on |
112 | | failure to allocate. |
113 | | */ |
114 | | fz_stream *fz_open_buffer(fz_context *ctx, fz_buffer *buf); |
115 | | |
116 | | /** |
117 | | Attach a filter to a stream that will store any |
118 | | characters read from the stream into the supplied buffer. |
119 | | |
120 | | chain: The underlying stream to leech from. |
121 | | |
122 | | buf: The buffer into which the read data should be appended. |
123 | | The buffer will be resized as required. |
124 | | |
125 | | Returns pointer to newly created stream. May throw exceptions on |
126 | | failure to allocate. |
127 | | */ |
128 | | fz_stream *fz_open_leecher(fz_context *ctx, fz_stream *chain, fz_buffer *buf); |
129 | | |
130 | | /** |
131 | | Increments the reference count for a stream. Returns the same |
132 | | pointer. |
133 | | |
134 | | Never throws exceptions. |
135 | | */ |
136 | | fz_stream *fz_keep_stream(fz_context *ctx, fz_stream *stm); |
137 | | |
138 | | /** |
139 | | Decrements the reference count for a stream. |
140 | | |
141 | | When the reference count for the stream hits zero, frees the |
142 | | storage used for the fz_stream itself, and (usually) |
143 | | releases the underlying resources that the stream is based upon |
144 | | (depends on the method used to open the stream initially). |
145 | | */ |
146 | | void fz_drop_stream(fz_context *ctx, fz_stream *stm); |
147 | | |
148 | | /** |
149 | | return the current reading position within a stream |
150 | | */ |
151 | | int64_t fz_tell(fz_context *ctx, fz_stream *stm); |
152 | | |
153 | | /** |
154 | | Seek within a stream. |
155 | | |
156 | | stm: The stream to seek within. |
157 | | |
158 | | offset: The offset to seek to. |
159 | | |
160 | | whence: From where the offset is measured (see fseek). |
161 | | SEEK_SET - start of stream. |
162 | | SEEK_CUR - current position. |
163 | | SEEK_END - end of stream. |
164 | | |
165 | | */ |
166 | | void fz_seek(fz_context *ctx, fz_stream *stm, int64_t offset, int whence); |
167 | | |
168 | | /** |
169 | | Read from a stream into a given data block. |
170 | | |
171 | | stm: The stream to read from. |
172 | | |
173 | | data: The data block to read into. |
174 | | |
175 | | len: The length of the data block (in bytes). |
176 | | |
177 | | Returns the number of bytes read. May throw exceptions. |
178 | | */ |
179 | | size_t fz_read(fz_context *ctx, fz_stream *stm, unsigned char *data, size_t len); |
180 | | |
181 | | /** |
182 | | Read from a stream discarding data. |
183 | | |
184 | | stm: The stream to read from. |
185 | | |
186 | | len: The number of bytes to read. |
187 | | |
188 | | Returns the number of bytes read. May throw exceptions. |
189 | | */ |
190 | | size_t fz_skip(fz_context *ctx, fz_stream *stm, size_t len); |
191 | | |
192 | | /** |
193 | | Read all of a stream into a buffer. |
194 | | |
195 | | stm: The stream to read from |
196 | | |
197 | | initial: Suggested initial size for the buffer. |
198 | | |
199 | | Returns a buffer created from reading from the stream. May throw |
200 | | exceptions on failure to allocate. |
201 | | */ |
202 | | fz_buffer *fz_read_all(fz_context *ctx, fz_stream *stm, size_t initial); |
203 | | |
204 | | /** |
205 | | Read all the contents of a file into a buffer. |
206 | | */ |
207 | | fz_buffer *fz_read_file(fz_context *ctx, const char *filename); |
208 | | |
209 | | /** |
210 | | Read all the contents of a file into a buffer. |
211 | | |
212 | | Returns NULL if the file does not exist, otherwise |
213 | | behaves exactly as fz_read_file. |
214 | | */ |
215 | | fz_buffer *fz_try_read_file(fz_context *ctx, const char *filename); |
216 | | |
217 | | /** |
218 | | fz_read_[u]int(16|24|32|64)(_le)? |
219 | | |
220 | | Read a 16/32/64 bit signed/unsigned integer from stream, |
221 | | in big or little-endian byte orders. |
222 | | |
223 | | Throws an exception if EOF is encountered. |
224 | | */ |
225 | | uint16_t fz_read_uint16(fz_context *ctx, fz_stream *stm); |
226 | | uint32_t fz_read_uint24(fz_context *ctx, fz_stream *stm); |
227 | | uint32_t fz_read_uint32(fz_context *ctx, fz_stream *stm); |
228 | | uint64_t fz_read_uint64(fz_context *ctx, fz_stream *stm); |
229 | | |
230 | | uint16_t fz_read_uint16_le(fz_context *ctx, fz_stream *stm); |
231 | | uint32_t fz_read_uint24_le(fz_context *ctx, fz_stream *stm); |
232 | | uint32_t fz_read_uint32_le(fz_context *ctx, fz_stream *stm); |
233 | | uint64_t fz_read_uint64_le(fz_context *ctx, fz_stream *stm); |
234 | | |
235 | | int16_t fz_read_int16(fz_context *ctx, fz_stream *stm); |
236 | | int32_t fz_read_int32(fz_context *ctx, fz_stream *stm); |
237 | | int64_t fz_read_int64(fz_context *ctx, fz_stream *stm); |
238 | | |
239 | | int16_t fz_read_int16_le(fz_context *ctx, fz_stream *stm); |
240 | | int32_t fz_read_int32_le(fz_context *ctx, fz_stream *stm); |
241 | | int64_t fz_read_int64_le(fz_context *ctx, fz_stream *stm); |
242 | | |
243 | | float fz_read_float_le(fz_context *ctx, fz_stream *stm); |
244 | | float fz_read_float(fz_context *ctx, fz_stream *stm); |
245 | | |
246 | | /** |
247 | | Read a null terminated string from the stream into |
248 | | a buffer of a given length. The buffer will be null terminated. |
249 | | Throws on failure (including the failure to fit the entire |
250 | | string including the terminator into the buffer). |
251 | | */ |
252 | | void fz_read_string(fz_context *ctx, fz_stream *stm, char *buffer, int len); |
253 | | |
254 | | /** |
255 | | Read a utf-8 rune from a stream. |
256 | | |
257 | | In the event of encountering badly formatted utf-8 codes |
258 | | (such as a leading code with an unexpected number of following |
259 | | codes) no error/exception is given, but undefined values may be |
260 | | returned. |
261 | | */ |
262 | | int fz_read_rune(fz_context *ctx, fz_stream *in); |
263 | | |
264 | | /** |
265 | | Read a utf-16 rune from a stream. (little endian and |
266 | | big endian respectively). |
267 | | |
268 | | In the event of encountering badly formatted utf-16 codes |
269 | | (mismatched surrogates) no error/exception is given, but |
270 | | undefined values may be returned. |
271 | | */ |
272 | | int fz_read_utf16_le(fz_context *ctx, fz_stream *stm); |
273 | | int fz_read_utf16_be(fz_context *ctx, fz_stream *stm); |
274 | | |
275 | | /** |
276 | | A function type for use when implementing |
277 | | fz_streams. The supplied function of this type is called |
278 | | whenever data is required, and the current buffer is empty. |
279 | | |
280 | | stm: The stream to operate on. |
281 | | |
282 | | max: a hint as to the maximum number of bytes that the caller |
283 | | needs to be ready immediately. Can safely be ignored. |
284 | | |
285 | | Returns -1 if there is no more data in the stream. Otherwise, |
286 | | the function should find its internal state using stm->state, |
287 | | refill its buffer, update stm->rp and stm->wp to point to the |
288 | | start and end of the new data respectively, and then |
289 | | "return *stm->rp++". |
290 | | */ |
291 | | typedef int (fz_stream_next_fn)(fz_context *ctx, fz_stream *stm, size_t max); |
292 | | |
293 | | /** |
294 | | A function type for use when implementing |
295 | | fz_streams. The supplied function of this type is called |
296 | | when the stream is dropped, to release the stream specific |
297 | | state information. |
298 | | |
299 | | state: The stream state to release. |
300 | | */ |
301 | | typedef void (fz_stream_drop_fn)(fz_context *ctx, void *state); |
302 | | |
303 | | /** |
304 | | A function type for use when implementing |
305 | | fz_streams. The supplied function of this type is called when |
306 | | fz_seek is requested, and the arguments are as defined for |
307 | | fz_seek. |
308 | | |
309 | | The stream can find it's private state in stm->state. |
310 | | */ |
311 | | typedef void (fz_stream_seek_fn)(fz_context *ctx, fz_stream *stm, int64_t offset, int whence); |
312 | | |
313 | | struct fz_stream |
314 | | { |
315 | | int refs; |
316 | | int error; |
317 | | int eof; |
318 | | int progressive; |
319 | | int64_t pos; |
320 | | int avail; |
321 | | int bits; |
322 | | unsigned char *rp, *wp; |
323 | | void *state; |
324 | | fz_stream_next_fn *next; |
325 | | fz_stream_drop_fn *drop; |
326 | | fz_stream_seek_fn *seek; |
327 | | }; |
328 | | |
329 | | /** |
330 | | Create a new stream object with the given |
331 | | internal state and function pointers. |
332 | | |
333 | | state: Internal state (opaque to everything but implementation). |
334 | | |
335 | | next: Should provide the next set of bytes (up to max) of stream |
336 | | data. Return the number of bytes read, or EOF when there is no |
337 | | more data. |
338 | | |
339 | | drop: Should clean up and free the internal state. May not |
340 | | throw exceptions. |
341 | | */ |
342 | | fz_stream *fz_new_stream(fz_context *ctx, void *state, fz_stream_next_fn *next, fz_stream_drop_fn *drop); |
343 | | |
344 | | /** |
345 | | Attempt to read a stream into a buffer. If truncated |
346 | | is NULL behaves as fz_read_all, sets a truncated flag in case of |
347 | | error. |
348 | | |
349 | | stm: The stream to read from. |
350 | | |
351 | | initial: Suggested initial size for the buffer. |
352 | | |
353 | | truncated: Flag to store success/failure indication in. |
354 | | |
355 | | worst_case: 0 for unknown, otherwise an upper bound for the |
356 | | size of the stream. |
357 | | |
358 | | Returns a buffer created from reading from the stream. |
359 | | */ |
360 | | fz_buffer *fz_read_best(fz_context *ctx, fz_stream *stm, size_t initial, int *truncated, size_t worst_case); |
361 | | |
362 | | /** |
363 | | Read a line from stream into the buffer until either a |
364 | | terminating newline or EOF, which it replaces with a null byte |
365 | | ('\0'). |
366 | | |
367 | | Returns buf on success, and NULL when end of file occurs while |
368 | | no characters have been read. |
369 | | */ |
370 | | char *fz_read_line(fz_context *ctx, fz_stream *stm, char *buf, size_t max); |
371 | | |
372 | | /** |
373 | | Skip over a given string in a stream. Return 0 if successfully |
374 | | skipped, non-zero otherwise. As many characters will be skipped |
375 | | over as matched in the string. |
376 | | */ |
377 | | int fz_skip_string(fz_context *ctx, fz_stream *stm, const char *str); |
378 | | |
379 | | /** |
380 | | Skip over whitespace (bytes <= 32) in a stream. |
381 | | */ |
382 | | void fz_skip_space(fz_context *ctx, fz_stream *stm); |
383 | | |
384 | | /** |
385 | | Ask how many bytes are available immediately from |
386 | | a given stream. |
387 | | |
388 | | stm: The stream to read from. |
389 | | |
390 | | max: A hint for the underlying stream; the maximum number of |
391 | | bytes that we are sure we will want to read. If you do not know |
392 | | this number, give 1. |
393 | | |
394 | | Returns the number of bytes immediately available between the |
395 | | read and write pointers. This number is guaranteed only to be 0 |
396 | | if we have hit EOF. The number of bytes returned here need have |
397 | | no relation to max (could be larger, could be smaller). |
398 | | */ |
399 | | static inline size_t fz_available(fz_context *ctx, fz_stream *stm, size_t max) |
400 | 14.6k | { |
401 | 14.6k | size_t len = stm->wp - stm->rp; |
402 | 14.6k | int c = EOF; |
403 | | |
404 | 14.6k | if (len) |
405 | 14.0k | return len; |
406 | 524 | if (stm->eof) |
407 | 4 | return 0; |
408 | | |
409 | 1.04k | fz_try(ctx) |
410 | 1.04k | c = stm->next(ctx, stm, max); |
411 | 1.04k | fz_catch(ctx) |
412 | 0 | { |
413 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); |
414 | 0 | fz_report_error(ctx); |
415 | 0 | fz_warn(ctx, "read error; treating as end of file"); |
416 | 0 | stm->error = 1; |
417 | 0 | c = EOF; |
418 | 0 | } |
419 | 520 | if (c == EOF) |
420 | 10 | { |
421 | 10 | stm->eof = 1; |
422 | 10 | return 0; |
423 | 10 | } |
424 | 510 | stm->rp--; |
425 | 510 | return stm->wp - stm->rp; |
426 | 520 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_available(fz_context*, fz_stream*, unsigned long) Unexecuted instantiation: colorspace.c:fz_available Unexecuted instantiation: context.c:fz_available Unexecuted instantiation: document-all.c:fz_available Unexecuted instantiation: document.c:fz_available Unexecuted instantiation: draw-device.c:fz_available Unexecuted instantiation: draw-glyph.c:fz_available Unexecuted instantiation: draw-mesh.c:fz_available Unexecuted instantiation: draw-paint.c:fz_available Unexecuted instantiation: draw-path.c:fz_available Unexecuted instantiation: draw-rasterize.c:fz_available Unexecuted instantiation: draw-scale-simple.c:fz_available Unexecuted instantiation: error.c:fz_available Unexecuted instantiation: font.c:fz_available Unexecuted instantiation: geometry.c:fz_available Unexecuted instantiation: glyph.c:fz_available Unexecuted instantiation: gz-doc.c:fz_available Unexecuted instantiation: hash.c:fz_available Unexecuted instantiation: hyphen.c:fz_available Unexecuted instantiation: image.c:fz_available Unexecuted instantiation: link.c:fz_available Unexecuted instantiation: list-device.c:fz_available Unexecuted instantiation: load-bmp.c:fz_available Unexecuted instantiation: load-gif.c:fz_available Unexecuted instantiation: load-jbig2.c:fz_available Unexecuted instantiation: load-jpeg.c:fz_available Unexecuted instantiation: load-jpx.c:fz_available Unexecuted instantiation: load-jxr.c:fz_available Unexecuted instantiation: load-png.c:fz_available Unexecuted instantiation: load-pnm.c:fz_available Unexecuted instantiation: load-psd.c:fz_available Unexecuted instantiation: load-tiff.c:fz_available Unexecuted instantiation: memory.c:fz_available Unexecuted instantiation: noto.c:fz_available Unexecuted instantiation: options.c:fz_available Unexecuted instantiation: outline.c:fz_available Unexecuted instantiation: output.c:fz_available Unexecuted instantiation: path.c:fz_available Unexecuted instantiation: pixmap.c:fz_available Unexecuted instantiation: pool.c:fz_available Unexecuted instantiation: printf.c:fz_available Unexecuted instantiation: random.c:fz_available Unexecuted instantiation: separation.c:fz_available Unexecuted instantiation: shade.c:fz_available Unexecuted instantiation: store.c:fz_available Unexecuted instantiation: stream-open.c:fz_available stream-read.c:fz_available Line | Count | Source | 400 | 13.7k | { | 401 | 13.7k | size_t len = stm->wp - stm->rp; | 402 | 13.7k | int c = EOF; | 403 | | | 404 | 13.7k | if (len) | 405 | 13.5k | return len; | 406 | 283 | if (stm->eof) | 407 | 3 | return 0; | 408 | | | 409 | 560 | fz_try(ctx) | 410 | 560 | c = stm->next(ctx, stm, max); | 411 | 560 | fz_catch(ctx) | 412 | 0 | { | 413 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 414 | 0 | fz_report_error(ctx); | 415 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 416 | 0 | stm->error = 1; | 417 | 0 | c = EOF; | 418 | 0 | } | 419 | 280 | if (c == EOF) | 420 | 7 | { | 421 | 7 | stm->eof = 1; | 422 | 7 | return 0; | 423 | 7 | } | 424 | 273 | stm->rp--; | 425 | 273 | return stm->wp - stm->rp; | 426 | 280 | } |
Unexecuted instantiation: string.c:fz_available Unexecuted instantiation: strtof.c:fz_available Unexecuted instantiation: text.c:fz_available Unexecuted instantiation: ucdn.c:fz_available Unexecuted instantiation: unzip.c:fz_available Unexecuted instantiation: util.c:fz_available Unexecuted instantiation: writer.c:fz_available Unexecuted instantiation: pdf-write.c:fz_available Unexecuted instantiation: pdf-xref.c:fz_available Unexecuted instantiation: xps-doc.c:fz_available Unexecuted instantiation: xps-link.c:fz_available Unexecuted instantiation: xps-path.c:fz_available Unexecuted instantiation: xps-resource.c:fz_available Unexecuted instantiation: xps-tile.c:fz_available Unexecuted instantiation: xps-util.c:fz_available Unexecuted instantiation: xps-zip.c:fz_available Unexecuted instantiation: svg-doc.c:fz_available Unexecuted instantiation: svg-run.c:fz_available Unexecuted instantiation: epub-doc.c:fz_available Unexecuted instantiation: html-doc.c:fz_available Unexecuted instantiation: html-font.c:fz_available Unexecuted instantiation: html-layout.c:fz_available Unexecuted instantiation: html-outline.c:fz_available Unexecuted instantiation: html-parse.c:fz_available Unexecuted instantiation: mobi.c:fz_available Unexecuted instantiation: office.c:fz_available Unexecuted instantiation: txt.c:fz_available Unexecuted instantiation: mucbz.c:fz_available Unexecuted instantiation: muimg.c:fz_available Unexecuted instantiation: archive.c:fz_available Unexecuted instantiation: bbox-device.c:fz_available Unexecuted instantiation: bidi.c:fz_available Unexecuted instantiation: bitmap.c:fz_available Unexecuted instantiation: brotli.c:fz_available Unexecuted instantiation: buffer.c:fz_available Unexecuted instantiation: color-fast.c:fz_available Unexecuted instantiation: color-icc-create.c:fz_available Unexecuted instantiation: color-lcms.c:fz_available Unexecuted instantiation: compressed-buffer.c:fz_available Unexecuted instantiation: crypt-md5.c:fz_available Unexecuted instantiation: device.c:fz_available Unexecuted instantiation: directory.c:fz_available Unexecuted instantiation: draw-affine.c:fz_available Unexecuted instantiation: draw-blend.c:fz_available Unexecuted instantiation: draw-edge.c:fz_available Unexecuted instantiation: draw-edgebuffer.c:fz_available Unexecuted instantiation: draw-unpack.c:fz_available Unexecuted instantiation: encode-fax.c:fz_available Unexecuted instantiation: encodings.c:fz_available filter-basic.c:fz_available Line | Count | Source | 400 | 241 | { | 401 | 241 | size_t len = stm->wp - stm->rp; | 402 | 241 | int c = EOF; | 403 | | | 404 | 241 | if (len) | 405 | 239 | return len; | 406 | 2 | if (stm->eof) | 407 | 0 | return 0; | 408 | | | 409 | 4 | fz_try(ctx) | 410 | 4 | c = stm->next(ctx, stm, max); | 411 | 4 | fz_catch(ctx) | 412 | 0 | { | 413 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 414 | 0 | fz_report_error(ctx); | 415 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 416 | 0 | stm->error = 1; | 417 | 0 | c = EOF; | 418 | 0 | } | 419 | 2 | if (c == EOF) | 420 | 2 | { | 421 | 2 | stm->eof = 1; | 422 | 2 | return 0; | 423 | 2 | } | 424 | 0 | stm->rp--; | 425 | 0 | return stm->wp - stm->rp; | 426 | 2 | } |
Unexecuted instantiation: filter-brotli.c:fz_available Unexecuted instantiation: filter-dct.c:fz_available Unexecuted instantiation: filter-fax.c:fz_available filter-flate.c:fz_available Line | Count | Source | 400 | 588 | { | 401 | 588 | size_t len = stm->wp - stm->rp; | 402 | 588 | int c = EOF; | 403 | | | 404 | 588 | if (len) | 405 | 349 | return len; | 406 | 239 | if (stm->eof) | 407 | 1 | return 0; | 408 | | | 409 | 476 | fz_try(ctx) | 410 | 476 | c = stm->next(ctx, stm, max); | 411 | 476 | fz_catch(ctx) | 412 | 0 | { | 413 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 414 | 0 | fz_report_error(ctx); | 415 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 416 | 0 | stm->error = 1; | 417 | 0 | c = EOF; | 418 | 0 | } | 419 | 238 | if (c == EOF) | 420 | 1 | { | 421 | 1 | stm->eof = 1; | 422 | 1 | return 0; | 423 | 1 | } | 424 | 237 | stm->rp--; | 425 | 237 | return stm->wp - stm->rp; | 426 | 238 | } |
Unexecuted instantiation: filter-jbig2.c:fz_available Unexecuted instantiation: filter-lzw.c:fz_available Unexecuted instantiation: filter-predict.c:fz_available Unexecuted instantiation: filter-sgi.c:fz_available Unexecuted instantiation: filter-thunder.c:fz_available Unexecuted instantiation: ftoa.c:fz_available Unexecuted instantiation: halftone.c:fz_available Unexecuted instantiation: harfbuzz.c:fz_available Unexecuted instantiation: output-cbz.c:fz_available Unexecuted instantiation: output-csv.c:fz_available Unexecuted instantiation: output-docx.c:fz_available Unexecuted instantiation: output-jpeg.c:fz_available Unexecuted instantiation: output-pcl.c:fz_available Unexecuted instantiation: output-pclm.c:fz_available Unexecuted instantiation: output-pdfocr.c:fz_available Unexecuted instantiation: output-png.c:fz_available Unexecuted instantiation: output-pnm.c:fz_available Unexecuted instantiation: output-ps.c:fz_available Unexecuted instantiation: output-pwg.c:fz_available Unexecuted instantiation: output-svg.c:fz_available Unexecuted instantiation: stext-device.c:fz_available Unexecuted instantiation: stext-output.c:fz_available Unexecuted instantiation: stext-para.c:fz_available Unexecuted instantiation: stext-search.c:fz_available Unexecuted instantiation: stext-table.c:fz_available Unexecuted instantiation: svg-device.c:fz_available Unexecuted instantiation: tree.c:fz_available Unexecuted instantiation: uncfb.c:fz_available Unexecuted instantiation: unlibarchive.c:fz_available Unexecuted instantiation: untar.c:fz_available Unexecuted instantiation: xml.c:fz_available Unexecuted instantiation: zip.c:fz_available Unexecuted instantiation: pdf-annot.c:fz_available Unexecuted instantiation: pdf-appearance.c:fz_available Unexecuted instantiation: pdf-clean.c:fz_available Unexecuted instantiation: pdf-colorspace.c:fz_available Unexecuted instantiation: pdf-crypt.c:fz_available Unexecuted instantiation: pdf-device.c:fz_available Unexecuted instantiation: pdf-event.c:fz_available Unexecuted instantiation: pdf-font-add.c:fz_available Unexecuted instantiation: pdf-font.c:fz_available Unexecuted instantiation: pdf-form.c:fz_available Unexecuted instantiation: pdf-function.c:fz_available Unexecuted instantiation: pdf-image.c:fz_available Unexecuted instantiation: pdf-interpret.c:fz_available Unexecuted instantiation: pdf-js.c:fz_available Unexecuted instantiation: pdf-label.c:fz_available Unexecuted instantiation: pdf-layer.c:fz_available Unexecuted instantiation: pdf-layout.c:fz_available Unexecuted instantiation: pdf-lex.c:fz_available Unexecuted instantiation: pdf-link.c:fz_available Unexecuted instantiation: pdf-metrics.c:fz_available Unexecuted instantiation: pdf-nametree.c:fz_available Unexecuted instantiation: pdf-object.c:fz_available Unexecuted instantiation: pdf-op-buffer.c:fz_available Unexecuted instantiation: pdf-op-filter.c:fz_available Unexecuted instantiation: pdf-op-run.c:fz_available Unexecuted instantiation: pdf-op-vectorize.c:fz_available Unexecuted instantiation: pdf-outline.c:fz_available Unexecuted instantiation: pdf-page.c:fz_available Unexecuted instantiation: pdf-parse.c:fz_available Unexecuted instantiation: pdf-pattern.c:fz_available Unexecuted instantiation: pdf-repair.c:fz_available Unexecuted instantiation: pdf-resources.c:fz_available Unexecuted instantiation: pdf-run.c:fz_available Unexecuted instantiation: pdf-shade.c:fz_available Unexecuted instantiation: pdf-signature.c:fz_available Unexecuted instantiation: pdf-store.c:fz_available Unexecuted instantiation: pdf-stream.c:fz_available Unexecuted instantiation: pdf-type3.c:fz_available Unexecuted instantiation: pdf-unicode.c:fz_available Unexecuted instantiation: pdf-xobject.c:fz_available Unexecuted instantiation: xps-common.c:fz_available Unexecuted instantiation: xps-glyphs.c:fz_available Unexecuted instantiation: xps-gradient.c:fz_available Unexecuted instantiation: xps-image.c:fz_available Unexecuted instantiation: xps-outline.c:fz_available Unexecuted instantiation: svg-color.c:fz_available Unexecuted instantiation: svg-parse.c:fz_available Unexecuted instantiation: css-apply.c:fz_available Unexecuted instantiation: css-parse.c:fz_available Unexecuted instantiation: bidi-std.c:fz_available Unexecuted instantiation: compress.c:fz_available Unexecuted instantiation: crypt-aes.c:fz_available Unexecuted instantiation: crypt-arc4.c:fz_available Unexecuted instantiation: crypt-sha2.c:fz_available Unexecuted instantiation: filter-leech.c:fz_available Unexecuted instantiation: glyphbox.c:fz_available Unexecuted instantiation: stext-boxer.c:fz_available Unexecuted instantiation: stext-iterator.c:fz_available Unexecuted instantiation: stext-raft.c:fz_available Unexecuted instantiation: text-decoder.c:fz_available Unexecuted instantiation: pdf-cmap-load.c:fz_available Unexecuted instantiation: pdf-cmap-parse.c:fz_available Unexecuted instantiation: pdf-cmap.c:fz_available |
427 | | |
428 | | /** |
429 | | Read the next byte from a stream. |
430 | | |
431 | | stm: The stream t read from. |
432 | | |
433 | | Returns -1 for end of stream, or the next byte. May |
434 | | throw exceptions. |
435 | | */ |
436 | | static inline int fz_read_byte(fz_context *ctx, fz_stream *stm) |
437 | 9.68M | { |
438 | 9.68M | int c = EOF; |
439 | | |
440 | 9.68M | if (stm->rp != stm->wp) |
441 | 9.68M | return *stm->rp++; |
442 | 109 | if (stm->eof) |
443 | 13 | return EOF; |
444 | 192 | fz_try(ctx) |
445 | 192 | c = stm->next(ctx, stm, 1); |
446 | 192 | fz_catch(ctx) |
447 | 0 | { |
448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); |
449 | 0 | fz_report_error(ctx); |
450 | 0 | fz_warn(ctx, "read error; treating as end of file"); |
451 | 0 | stm->error = 1; |
452 | 0 | c = EOF; |
453 | 0 | } |
454 | 96 | if (c == EOF) |
455 | 17 | stm->eof = 1; |
456 | 96 | return c; |
457 | 109 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_read_byte(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_read_byte Unexecuted instantiation: context.c:fz_read_byte Unexecuted instantiation: document-all.c:fz_read_byte Unexecuted instantiation: document.c:fz_read_byte Unexecuted instantiation: draw-device.c:fz_read_byte Unexecuted instantiation: draw-glyph.c:fz_read_byte Unexecuted instantiation: draw-mesh.c:fz_read_byte Unexecuted instantiation: draw-paint.c:fz_read_byte Unexecuted instantiation: draw-path.c:fz_read_byte Unexecuted instantiation: draw-rasterize.c:fz_read_byte Unexecuted instantiation: draw-scale-simple.c:fz_read_byte Unexecuted instantiation: error.c:fz_read_byte Unexecuted instantiation: font.c:fz_read_byte Unexecuted instantiation: geometry.c:fz_read_byte Unexecuted instantiation: glyph.c:fz_read_byte Unexecuted instantiation: gz-doc.c:fz_read_byte Unexecuted instantiation: hash.c:fz_read_byte Unexecuted instantiation: hyphen.c:fz_read_byte Unexecuted instantiation: image.c:fz_read_byte Unexecuted instantiation: link.c:fz_read_byte Unexecuted instantiation: list-device.c:fz_read_byte Unexecuted instantiation: load-bmp.c:fz_read_byte Unexecuted instantiation: load-gif.c:fz_read_byte Unexecuted instantiation: load-jbig2.c:fz_read_byte Unexecuted instantiation: load-jpeg.c:fz_read_byte Unexecuted instantiation: load-jpx.c:fz_read_byte Unexecuted instantiation: load-jxr.c:fz_read_byte Unexecuted instantiation: load-png.c:fz_read_byte Unexecuted instantiation: load-pnm.c:fz_read_byte Unexecuted instantiation: load-psd.c:fz_read_byte Unexecuted instantiation: load-tiff.c:fz_read_byte Unexecuted instantiation: memory.c:fz_read_byte Unexecuted instantiation: noto.c:fz_read_byte Unexecuted instantiation: options.c:fz_read_byte Unexecuted instantiation: outline.c:fz_read_byte Unexecuted instantiation: output.c:fz_read_byte Unexecuted instantiation: path.c:fz_read_byte Unexecuted instantiation: pixmap.c:fz_read_byte Unexecuted instantiation: pool.c:fz_read_byte Unexecuted instantiation: printf.c:fz_read_byte Unexecuted instantiation: random.c:fz_read_byte Unexecuted instantiation: separation.c:fz_read_byte Unexecuted instantiation: shade.c:fz_read_byte Unexecuted instantiation: store.c:fz_read_byte Unexecuted instantiation: stream-open.c:fz_read_byte stream-read.c:fz_read_byte Line | Count | Source | 437 | 1.92k | { | 438 | 1.92k | int c = EOF; | 439 | | | 440 | 1.92k | if (stm->rp != stm->wp) | 441 | 1.92k | return *stm->rp++; | 442 | 0 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 0 | fz_try(ctx) | 445 | 0 | c = stm->next(ctx, stm, 1); | 446 | 0 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 0 | if (c == EOF) | 455 | 0 | stm->eof = 1; | 456 | 0 | return c; | 457 | 0 | } |
Unexecuted instantiation: string.c:fz_read_byte Unexecuted instantiation: strtof.c:fz_read_byte Unexecuted instantiation: text.c:fz_read_byte Unexecuted instantiation: ucdn.c:fz_read_byte Unexecuted instantiation: unzip.c:fz_read_byte Unexecuted instantiation: util.c:fz_read_byte Unexecuted instantiation: writer.c:fz_read_byte Unexecuted instantiation: pdf-write.c:fz_read_byte Line | Count | Source | 437 | 16.4k | { | 438 | 16.4k | int c = EOF; | 439 | | | 440 | 16.4k | if (stm->rp != stm->wp) | 441 | 16.4k | return *stm->rp++; | 442 | 0 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 0 | fz_try(ctx) | 445 | 0 | c = stm->next(ctx, stm, 1); | 446 | 0 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 0 | if (c == EOF) | 455 | 0 | stm->eof = 1; | 456 | 0 | return c; | 457 | 0 | } |
Unexecuted instantiation: xps-doc.c:fz_read_byte Unexecuted instantiation: xps-link.c:fz_read_byte Unexecuted instantiation: xps-path.c:fz_read_byte Unexecuted instantiation: xps-resource.c:fz_read_byte Unexecuted instantiation: xps-tile.c:fz_read_byte Unexecuted instantiation: xps-util.c:fz_read_byte Unexecuted instantiation: xps-zip.c:fz_read_byte Line | Count | Source | 437 | 12 | { | 438 | 12 | int c = EOF; | 439 | | | 440 | 12 | if (stm->rp != stm->wp) | 441 | 12 | return *stm->rp++; | 442 | 0 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 0 | fz_try(ctx) | 445 | 0 | c = stm->next(ctx, stm, 1); | 446 | 0 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 0 | if (c == EOF) | 455 | 0 | stm->eof = 1; | 456 | 0 | return c; | 457 | 0 | } |
Unexecuted instantiation: svg-run.c:fz_read_byte Unexecuted instantiation: epub-doc.c:fz_read_byte Line | Count | Source | 437 | 49.1k | { | 438 | 49.1k | int c = EOF; | 439 | | | 440 | 49.1k | if (stm->rp != stm->wp) | 441 | 49.1k | return *stm->rp++; | 442 | 0 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 0 | fz_try(ctx) | 445 | 0 | c = stm->next(ctx, stm, 1); | 446 | 0 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 0 | if (c == EOF) | 455 | 0 | stm->eof = 1; | 456 | 0 | return c; | 457 | 0 | } |
Unexecuted instantiation: html-font.c:fz_read_byte Unexecuted instantiation: html-layout.c:fz_read_byte Unexecuted instantiation: html-outline.c:fz_read_byte Unexecuted instantiation: html-parse.c:fz_read_byte Unexecuted instantiation: mobi.c:fz_read_byte Unexecuted instantiation: office.c:fz_read_byte Unexecuted instantiation: txt.c:fz_read_byte Unexecuted instantiation: mucbz.c:fz_read_byte Unexecuted instantiation: muimg.c:fz_read_byte Unexecuted instantiation: archive.c:fz_read_byte Unexecuted instantiation: bbox-device.c:fz_read_byte Unexecuted instantiation: bidi.c:fz_read_byte Unexecuted instantiation: bitmap.c:fz_read_byte Unexecuted instantiation: brotli.c:fz_read_byte Unexecuted instantiation: buffer.c:fz_read_byte Unexecuted instantiation: color-fast.c:fz_read_byte Unexecuted instantiation: color-icc-create.c:fz_read_byte Unexecuted instantiation: color-lcms.c:fz_read_byte Unexecuted instantiation: compressed-buffer.c:fz_read_byte Unexecuted instantiation: crypt-md5.c:fz_read_byte Unexecuted instantiation: device.c:fz_read_byte Unexecuted instantiation: directory.c:fz_read_byte Unexecuted instantiation: draw-affine.c:fz_read_byte Unexecuted instantiation: draw-blend.c:fz_read_byte Unexecuted instantiation: draw-edge.c:fz_read_byte Unexecuted instantiation: draw-edgebuffer.c:fz_read_byte Unexecuted instantiation: draw-unpack.c:fz_read_byte Unexecuted instantiation: encode-fax.c:fz_read_byte Unexecuted instantiation: encodings.c:fz_read_byte Unexecuted instantiation: filter-basic.c:fz_read_byte Unexecuted instantiation: filter-brotli.c:fz_read_byte Unexecuted instantiation: filter-dct.c:fz_read_byte Unexecuted instantiation: filter-fax.c:fz_read_byte Unexecuted instantiation: filter-flate.c:fz_read_byte Unexecuted instantiation: filter-jbig2.c:fz_read_byte Unexecuted instantiation: filter-lzw.c:fz_read_byte Unexecuted instantiation: filter-predict.c:fz_read_byte Unexecuted instantiation: filter-sgi.c:fz_read_byte Unexecuted instantiation: filter-thunder.c:fz_read_byte Unexecuted instantiation: ftoa.c:fz_read_byte Unexecuted instantiation: halftone.c:fz_read_byte Unexecuted instantiation: harfbuzz.c:fz_read_byte Unexecuted instantiation: output-cbz.c:fz_read_byte Unexecuted instantiation: output-csv.c:fz_read_byte Unexecuted instantiation: output-docx.c:fz_read_byte Unexecuted instantiation: output-jpeg.c:fz_read_byte Unexecuted instantiation: output-pcl.c:fz_read_byte Unexecuted instantiation: output-pclm.c:fz_read_byte Unexecuted instantiation: output-pdfocr.c:fz_read_byte Unexecuted instantiation: output-png.c:fz_read_byte Unexecuted instantiation: output-pnm.c:fz_read_byte Unexecuted instantiation: output-ps.c:fz_read_byte Unexecuted instantiation: output-pwg.c:fz_read_byte Unexecuted instantiation: output-svg.c:fz_read_byte Unexecuted instantiation: stext-device.c:fz_read_byte Unexecuted instantiation: stext-output.c:fz_read_byte Unexecuted instantiation: stext-para.c:fz_read_byte Unexecuted instantiation: stext-search.c:fz_read_byte Unexecuted instantiation: stext-table.c:fz_read_byte Unexecuted instantiation: svg-device.c:fz_read_byte Unexecuted instantiation: tree.c:fz_read_byte Unexecuted instantiation: uncfb.c:fz_read_byte Unexecuted instantiation: unlibarchive.c:fz_read_byte Unexecuted instantiation: untar.c:fz_read_byte Unexecuted instantiation: xml.c:fz_read_byte Unexecuted instantiation: zip.c:fz_read_byte Unexecuted instantiation: pdf-annot.c:fz_read_byte Unexecuted instantiation: pdf-appearance.c:fz_read_byte Unexecuted instantiation: pdf-clean.c:fz_read_byte Unexecuted instantiation: pdf-colorspace.c:fz_read_byte Unexecuted instantiation: pdf-crypt.c:fz_read_byte Unexecuted instantiation: pdf-device.c:fz_read_byte Unexecuted instantiation: pdf-event.c:fz_read_byte Unexecuted instantiation: pdf-font-add.c:fz_read_byte Unexecuted instantiation: pdf-font.c:fz_read_byte Unexecuted instantiation: pdf-form.c:fz_read_byte Unexecuted instantiation: pdf-function.c:fz_read_byte Unexecuted instantiation: pdf-image.c:fz_read_byte Unexecuted instantiation: pdf-interpret.c:fz_read_byte Unexecuted instantiation: pdf-js.c:fz_read_byte Unexecuted instantiation: pdf-label.c:fz_read_byte Unexecuted instantiation: pdf-layer.c:fz_read_byte Unexecuted instantiation: pdf-layout.c:fz_read_byte Line | Count | Source | 437 | 4.79M | { | 438 | 4.79M | int c = EOF; | 439 | | | 440 | 4.79M | if (stm->rp != stm->wp) | 441 | 4.79M | return *stm->rp++; | 442 | 103 | if (stm->eof) | 443 | 13 | return EOF; | 444 | 180 | fz_try(ctx) | 445 | 180 | c = stm->next(ctx, stm, 1); | 446 | 180 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 90 | if (c == EOF) | 455 | 11 | stm->eof = 1; | 456 | 90 | return c; | 457 | 103 | } |
Unexecuted instantiation: pdf-link.c:fz_read_byte Unexecuted instantiation: pdf-metrics.c:fz_read_byte Unexecuted instantiation: pdf-nametree.c:fz_read_byte Unexecuted instantiation: pdf-object.c:fz_read_byte Unexecuted instantiation: pdf-op-buffer.c:fz_read_byte Unexecuted instantiation: pdf-op-filter.c:fz_read_byte Unexecuted instantiation: pdf-op-run.c:fz_read_byte Unexecuted instantiation: pdf-op-vectorize.c:fz_read_byte Unexecuted instantiation: pdf-outline.c:fz_read_byte Unexecuted instantiation: pdf-page.c:fz_read_byte Line | Count | Source | 437 | 160 | { | 438 | 160 | int c = EOF; | 439 | | | 440 | 160 | if (stm->rp != stm->wp) | 441 | 160 | return *stm->rp++; | 442 | 0 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 0 | fz_try(ctx) | 445 | 0 | c = stm->next(ctx, stm, 1); | 446 | 0 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 0 | if (c == EOF) | 455 | 0 | stm->eof = 1; | 456 | 0 | return c; | 457 | 0 | } |
Unexecuted instantiation: pdf-pattern.c:fz_read_byte pdf-repair.c:fz_read_byte Line | Count | Source | 437 | 4.82M | { | 438 | 4.82M | int c = EOF; | 439 | | | 440 | 4.82M | if (stm->rp != stm->wp) | 441 | 4.82M | return *stm->rp++; | 442 | 6 | if (stm->eof) | 443 | 0 | return EOF; | 444 | 12 | fz_try(ctx) | 445 | 12 | c = stm->next(ctx, stm, 1); | 446 | 12 | fz_catch(ctx) | 447 | 0 | { | 448 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 449 | 0 | fz_report_error(ctx); | 450 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 451 | 0 | stm->error = 1; | 452 | 0 | c = EOF; | 453 | 0 | } | 454 | 6 | if (c == EOF) | 455 | 6 | stm->eof = 1; | 456 | 6 | return c; | 457 | 6 | } |
Unexecuted instantiation: pdf-resources.c:fz_read_byte Unexecuted instantiation: pdf-run.c:fz_read_byte Unexecuted instantiation: pdf-shade.c:fz_read_byte Unexecuted instantiation: pdf-signature.c:fz_read_byte Unexecuted instantiation: pdf-store.c:fz_read_byte Unexecuted instantiation: pdf-stream.c:fz_read_byte Unexecuted instantiation: pdf-type3.c:fz_read_byte Unexecuted instantiation: pdf-unicode.c:fz_read_byte Unexecuted instantiation: pdf-xobject.c:fz_read_byte Unexecuted instantiation: xps-common.c:fz_read_byte Unexecuted instantiation: xps-glyphs.c:fz_read_byte Unexecuted instantiation: xps-gradient.c:fz_read_byte Unexecuted instantiation: xps-image.c:fz_read_byte Unexecuted instantiation: xps-outline.c:fz_read_byte Unexecuted instantiation: svg-color.c:fz_read_byte Unexecuted instantiation: svg-parse.c:fz_read_byte Unexecuted instantiation: css-apply.c:fz_read_byte Unexecuted instantiation: css-parse.c:fz_read_byte Unexecuted instantiation: bidi-std.c:fz_read_byte Unexecuted instantiation: compress.c:fz_read_byte Unexecuted instantiation: crypt-aes.c:fz_read_byte Unexecuted instantiation: crypt-arc4.c:fz_read_byte Unexecuted instantiation: crypt-sha2.c:fz_read_byte Unexecuted instantiation: filter-leech.c:fz_read_byte Unexecuted instantiation: glyphbox.c:fz_read_byte Unexecuted instantiation: stext-boxer.c:fz_read_byte Unexecuted instantiation: stext-iterator.c:fz_read_byte Unexecuted instantiation: stext-raft.c:fz_read_byte Unexecuted instantiation: text-decoder.c:fz_read_byte Unexecuted instantiation: pdf-cmap-load.c:fz_read_byte Unexecuted instantiation: pdf-cmap-parse.c:fz_read_byte Unexecuted instantiation: pdf-cmap.c:fz_read_byte |
458 | | |
459 | | /** |
460 | | Peek at the next byte in a stream. |
461 | | |
462 | | stm: The stream to peek at. |
463 | | |
464 | | Returns -1 for EOF, or the next byte that will be read. |
465 | | */ |
466 | | static inline int fz_peek_byte(fz_context *ctx, fz_stream *stm) |
467 | 4.81k | { |
468 | 4.81k | int c = EOF; |
469 | | |
470 | 4.81k | if (stm->rp != stm->wp) |
471 | 4.81k | return *stm->rp; |
472 | 0 | if (stm->eof) |
473 | 0 | return EOF; |
474 | | |
475 | 0 | fz_try(ctx) |
476 | 0 | { |
477 | 0 | c = stm->next(ctx, stm, 1); |
478 | 0 | if (c != EOF) |
479 | 0 | stm->rp--; |
480 | 0 | } |
481 | 0 | fz_catch(ctx) |
482 | 0 | { |
483 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); |
484 | 0 | fz_report_error(ctx); |
485 | 0 | fz_warn(ctx, "read error; treating as end of file"); |
486 | 0 | stm->error = 1; |
487 | 0 | c = EOF; |
488 | 0 | } |
489 | 0 | if (c == EOF) |
490 | 0 | stm->eof = 1; |
491 | 0 | return c; |
492 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_peek_byte(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_peek_byte Unexecuted instantiation: context.c:fz_peek_byte Unexecuted instantiation: document-all.c:fz_peek_byte Unexecuted instantiation: document.c:fz_peek_byte Unexecuted instantiation: draw-device.c:fz_peek_byte Unexecuted instantiation: draw-glyph.c:fz_peek_byte Unexecuted instantiation: draw-mesh.c:fz_peek_byte Unexecuted instantiation: draw-paint.c:fz_peek_byte Unexecuted instantiation: draw-path.c:fz_peek_byte Unexecuted instantiation: draw-rasterize.c:fz_peek_byte Unexecuted instantiation: draw-scale-simple.c:fz_peek_byte Unexecuted instantiation: error.c:fz_peek_byte Unexecuted instantiation: font.c:fz_peek_byte Unexecuted instantiation: geometry.c:fz_peek_byte Unexecuted instantiation: glyph.c:fz_peek_byte Unexecuted instantiation: gz-doc.c:fz_peek_byte Unexecuted instantiation: hash.c:fz_peek_byte Unexecuted instantiation: hyphen.c:fz_peek_byte Unexecuted instantiation: image.c:fz_peek_byte Unexecuted instantiation: link.c:fz_peek_byte Unexecuted instantiation: list-device.c:fz_peek_byte Unexecuted instantiation: load-bmp.c:fz_peek_byte Unexecuted instantiation: load-gif.c:fz_peek_byte Unexecuted instantiation: load-jbig2.c:fz_peek_byte Unexecuted instantiation: load-jpeg.c:fz_peek_byte Unexecuted instantiation: load-jpx.c:fz_peek_byte Unexecuted instantiation: load-jxr.c:fz_peek_byte Unexecuted instantiation: load-png.c:fz_peek_byte Unexecuted instantiation: load-pnm.c:fz_peek_byte Unexecuted instantiation: load-psd.c:fz_peek_byte Unexecuted instantiation: load-tiff.c:fz_peek_byte Unexecuted instantiation: memory.c:fz_peek_byte Unexecuted instantiation: noto.c:fz_peek_byte Unexecuted instantiation: options.c:fz_peek_byte Unexecuted instantiation: outline.c:fz_peek_byte Unexecuted instantiation: output.c:fz_peek_byte Unexecuted instantiation: path.c:fz_peek_byte Unexecuted instantiation: pixmap.c:fz_peek_byte Unexecuted instantiation: pool.c:fz_peek_byte Unexecuted instantiation: printf.c:fz_peek_byte Unexecuted instantiation: random.c:fz_peek_byte Unexecuted instantiation: separation.c:fz_peek_byte Unexecuted instantiation: shade.c:fz_peek_byte Unexecuted instantiation: store.c:fz_peek_byte Unexecuted instantiation: stream-open.c:fz_peek_byte Unexecuted instantiation: stream-read.c:fz_peek_byte Unexecuted instantiation: string.c:fz_peek_byte Unexecuted instantiation: strtof.c:fz_peek_byte Unexecuted instantiation: text.c:fz_peek_byte Unexecuted instantiation: ucdn.c:fz_peek_byte Unexecuted instantiation: unzip.c:fz_peek_byte Unexecuted instantiation: util.c:fz_peek_byte Unexecuted instantiation: writer.c:fz_peek_byte Unexecuted instantiation: pdf-write.c:fz_peek_byte Unexecuted instantiation: pdf-xref.c:fz_peek_byte Unexecuted instantiation: xps-doc.c:fz_peek_byte Unexecuted instantiation: xps-link.c:fz_peek_byte Unexecuted instantiation: xps-path.c:fz_peek_byte Unexecuted instantiation: xps-resource.c:fz_peek_byte Unexecuted instantiation: xps-tile.c:fz_peek_byte Unexecuted instantiation: xps-util.c:fz_peek_byte Unexecuted instantiation: xps-zip.c:fz_peek_byte Unexecuted instantiation: svg-doc.c:fz_peek_byte Unexecuted instantiation: svg-run.c:fz_peek_byte Unexecuted instantiation: epub-doc.c:fz_peek_byte Unexecuted instantiation: html-doc.c:fz_peek_byte Unexecuted instantiation: html-font.c:fz_peek_byte Unexecuted instantiation: html-layout.c:fz_peek_byte Unexecuted instantiation: html-outline.c:fz_peek_byte Unexecuted instantiation: html-parse.c:fz_peek_byte Unexecuted instantiation: mobi.c:fz_peek_byte Unexecuted instantiation: office.c:fz_peek_byte Unexecuted instantiation: txt.c:fz_peek_byte Unexecuted instantiation: mucbz.c:fz_peek_byte Unexecuted instantiation: muimg.c:fz_peek_byte Unexecuted instantiation: archive.c:fz_peek_byte Unexecuted instantiation: bbox-device.c:fz_peek_byte Unexecuted instantiation: bidi.c:fz_peek_byte Unexecuted instantiation: bitmap.c:fz_peek_byte Unexecuted instantiation: brotli.c:fz_peek_byte Unexecuted instantiation: buffer.c:fz_peek_byte Unexecuted instantiation: color-fast.c:fz_peek_byte Unexecuted instantiation: color-icc-create.c:fz_peek_byte Unexecuted instantiation: color-lcms.c:fz_peek_byte Unexecuted instantiation: compressed-buffer.c:fz_peek_byte Unexecuted instantiation: crypt-md5.c:fz_peek_byte Unexecuted instantiation: device.c:fz_peek_byte Unexecuted instantiation: directory.c:fz_peek_byte Unexecuted instantiation: draw-affine.c:fz_peek_byte Unexecuted instantiation: draw-blend.c:fz_peek_byte Unexecuted instantiation: draw-edge.c:fz_peek_byte Unexecuted instantiation: draw-edgebuffer.c:fz_peek_byte Unexecuted instantiation: draw-unpack.c:fz_peek_byte Unexecuted instantiation: encode-fax.c:fz_peek_byte Unexecuted instantiation: encodings.c:fz_peek_byte Unexecuted instantiation: filter-basic.c:fz_peek_byte Unexecuted instantiation: filter-brotli.c:fz_peek_byte Unexecuted instantiation: filter-dct.c:fz_peek_byte Unexecuted instantiation: filter-fax.c:fz_peek_byte Unexecuted instantiation: filter-flate.c:fz_peek_byte Unexecuted instantiation: filter-jbig2.c:fz_peek_byte Unexecuted instantiation: filter-lzw.c:fz_peek_byte Unexecuted instantiation: filter-predict.c:fz_peek_byte Unexecuted instantiation: filter-sgi.c:fz_peek_byte Unexecuted instantiation: filter-thunder.c:fz_peek_byte Unexecuted instantiation: ftoa.c:fz_peek_byte Unexecuted instantiation: halftone.c:fz_peek_byte Unexecuted instantiation: harfbuzz.c:fz_peek_byte Unexecuted instantiation: output-cbz.c:fz_peek_byte Unexecuted instantiation: output-csv.c:fz_peek_byte Unexecuted instantiation: output-docx.c:fz_peek_byte Unexecuted instantiation: output-jpeg.c:fz_peek_byte Unexecuted instantiation: output-pcl.c:fz_peek_byte Unexecuted instantiation: output-pclm.c:fz_peek_byte Unexecuted instantiation: output-pdfocr.c:fz_peek_byte Unexecuted instantiation: output-png.c:fz_peek_byte Unexecuted instantiation: output-pnm.c:fz_peek_byte Unexecuted instantiation: output-ps.c:fz_peek_byte Unexecuted instantiation: output-pwg.c:fz_peek_byte Unexecuted instantiation: output-svg.c:fz_peek_byte Unexecuted instantiation: stext-device.c:fz_peek_byte Unexecuted instantiation: stext-output.c:fz_peek_byte Unexecuted instantiation: stext-para.c:fz_peek_byte Unexecuted instantiation: stext-search.c:fz_peek_byte Unexecuted instantiation: stext-table.c:fz_peek_byte Unexecuted instantiation: svg-device.c:fz_peek_byte Unexecuted instantiation: tree.c:fz_peek_byte Unexecuted instantiation: uncfb.c:fz_peek_byte Unexecuted instantiation: unlibarchive.c:fz_peek_byte Unexecuted instantiation: untar.c:fz_peek_byte Unexecuted instantiation: xml.c:fz_peek_byte Unexecuted instantiation: zip.c:fz_peek_byte Unexecuted instantiation: pdf-annot.c:fz_peek_byte Unexecuted instantiation: pdf-appearance.c:fz_peek_byte Unexecuted instantiation: pdf-clean.c:fz_peek_byte Unexecuted instantiation: pdf-colorspace.c:fz_peek_byte Unexecuted instantiation: pdf-crypt.c:fz_peek_byte Unexecuted instantiation: pdf-device.c:fz_peek_byte Unexecuted instantiation: pdf-event.c:fz_peek_byte Unexecuted instantiation: pdf-font-add.c:fz_peek_byte Unexecuted instantiation: pdf-font.c:fz_peek_byte Unexecuted instantiation: pdf-form.c:fz_peek_byte Unexecuted instantiation: pdf-function.c:fz_peek_byte Unexecuted instantiation: pdf-image.c:fz_peek_byte Unexecuted instantiation: pdf-interpret.c:fz_peek_byte Unexecuted instantiation: pdf-js.c:fz_peek_byte Unexecuted instantiation: pdf-label.c:fz_peek_byte Unexecuted instantiation: pdf-layer.c:fz_peek_byte Unexecuted instantiation: pdf-layout.c:fz_peek_byte Line | Count | Source | 467 | 4.78k | { | 468 | 4.78k | int c = EOF; | 469 | | | 470 | 4.78k | if (stm->rp != stm->wp) | 471 | 4.78k | return *stm->rp; | 472 | 0 | if (stm->eof) | 473 | 0 | return EOF; | 474 | | | 475 | 0 | fz_try(ctx) | 476 | 0 | { | 477 | 0 | c = stm->next(ctx, stm, 1); | 478 | 0 | if (c != EOF) | 479 | 0 | stm->rp--; | 480 | 0 | } | 481 | 0 | fz_catch(ctx) | 482 | 0 | { | 483 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 484 | 0 | fz_report_error(ctx); | 485 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 486 | 0 | stm->error = 1; | 487 | 0 | c = EOF; | 488 | 0 | } | 489 | 0 | if (c == EOF) | 490 | 0 | stm->eof = 1; | 491 | 0 | return c; | 492 | 0 | } |
Unexecuted instantiation: pdf-link.c:fz_peek_byte Unexecuted instantiation: pdf-metrics.c:fz_peek_byte Unexecuted instantiation: pdf-nametree.c:fz_peek_byte Unexecuted instantiation: pdf-object.c:fz_peek_byte Unexecuted instantiation: pdf-op-buffer.c:fz_peek_byte Unexecuted instantiation: pdf-op-filter.c:fz_peek_byte Unexecuted instantiation: pdf-op-run.c:fz_peek_byte Unexecuted instantiation: pdf-op-vectorize.c:fz_peek_byte Unexecuted instantiation: pdf-outline.c:fz_peek_byte Unexecuted instantiation: pdf-page.c:fz_peek_byte Line | Count | Source | 467 | 15 | { | 468 | 15 | int c = EOF; | 469 | | | 470 | 15 | if (stm->rp != stm->wp) | 471 | 15 | return *stm->rp; | 472 | 0 | if (stm->eof) | 473 | 0 | return EOF; | 474 | | | 475 | 0 | fz_try(ctx) | 476 | 0 | { | 477 | 0 | c = stm->next(ctx, stm, 1); | 478 | 0 | if (c != EOF) | 479 | 0 | stm->rp--; | 480 | 0 | } | 481 | 0 | fz_catch(ctx) | 482 | 0 | { | 483 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 484 | 0 | fz_report_error(ctx); | 485 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 486 | 0 | stm->error = 1; | 487 | 0 | c = EOF; | 488 | 0 | } | 489 | 0 | if (c == EOF) | 490 | 0 | stm->eof = 1; | 491 | 0 | return c; | 492 | 0 | } |
Unexecuted instantiation: pdf-pattern.c:fz_peek_byte pdf-repair.c:fz_peek_byte Line | Count | Source | 467 | 15 | { | 468 | 15 | int c = EOF; | 469 | | | 470 | 15 | if (stm->rp != stm->wp) | 471 | 15 | return *stm->rp; | 472 | 0 | if (stm->eof) | 473 | 0 | return EOF; | 474 | | | 475 | 0 | fz_try(ctx) | 476 | 0 | { | 477 | 0 | c = stm->next(ctx, stm, 1); | 478 | 0 | if (c != EOF) | 479 | 0 | stm->rp--; | 480 | 0 | } | 481 | 0 | fz_catch(ctx) | 482 | 0 | { | 483 | 0 | fz_rethrow_if(ctx, FZ_ERROR_TRYLATER); | 484 | 0 | fz_report_error(ctx); | 485 | 0 | fz_warn(ctx, "read error; treating as end of file"); | 486 | 0 | stm->error = 1; | 487 | 0 | c = EOF; | 488 | 0 | } | 489 | 0 | if (c == EOF) | 490 | 0 | stm->eof = 1; | 491 | 0 | return c; | 492 | 0 | } |
Unexecuted instantiation: pdf-resources.c:fz_peek_byte Unexecuted instantiation: pdf-run.c:fz_peek_byte Unexecuted instantiation: pdf-shade.c:fz_peek_byte Unexecuted instantiation: pdf-signature.c:fz_peek_byte Unexecuted instantiation: pdf-store.c:fz_peek_byte Unexecuted instantiation: pdf-stream.c:fz_peek_byte Unexecuted instantiation: pdf-type3.c:fz_peek_byte Unexecuted instantiation: pdf-unicode.c:fz_peek_byte Unexecuted instantiation: pdf-xobject.c:fz_peek_byte Unexecuted instantiation: xps-common.c:fz_peek_byte Unexecuted instantiation: xps-glyphs.c:fz_peek_byte Unexecuted instantiation: xps-gradient.c:fz_peek_byte Unexecuted instantiation: xps-image.c:fz_peek_byte Unexecuted instantiation: xps-outline.c:fz_peek_byte Unexecuted instantiation: svg-color.c:fz_peek_byte Unexecuted instantiation: svg-parse.c:fz_peek_byte Unexecuted instantiation: css-apply.c:fz_peek_byte Unexecuted instantiation: css-parse.c:fz_peek_byte Unexecuted instantiation: bidi-std.c:fz_peek_byte Unexecuted instantiation: compress.c:fz_peek_byte Unexecuted instantiation: crypt-aes.c:fz_peek_byte Unexecuted instantiation: crypt-arc4.c:fz_peek_byte Unexecuted instantiation: crypt-sha2.c:fz_peek_byte Unexecuted instantiation: filter-leech.c:fz_peek_byte Unexecuted instantiation: glyphbox.c:fz_peek_byte Unexecuted instantiation: stext-boxer.c:fz_peek_byte Unexecuted instantiation: stext-iterator.c:fz_peek_byte Unexecuted instantiation: stext-raft.c:fz_peek_byte Unexecuted instantiation: text-decoder.c:fz_peek_byte Unexecuted instantiation: pdf-cmap-load.c:fz_peek_byte Unexecuted instantiation: pdf-cmap-parse.c:fz_peek_byte Unexecuted instantiation: pdf-cmap.c:fz_peek_byte |
493 | | |
494 | | /** |
495 | | Unread the single last byte successfully |
496 | | read from a stream. Do not call this without having |
497 | | successfully read a byte. |
498 | | |
499 | | stm: The stream to operate upon. |
500 | | */ |
501 | | static inline void fz_unread_byte(fz_context *ctx FZ_UNUSED, fz_stream *stm) |
502 | 1.29M | { |
503 | 1.29M | stm->rp--; |
504 | 1.29M | } Unexecuted instantiation: pdf_fuzzer.cc:fz_unread_byte(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_unread_byte Unexecuted instantiation: context.c:fz_unread_byte Unexecuted instantiation: document-all.c:fz_unread_byte Unexecuted instantiation: document.c:fz_unread_byte Unexecuted instantiation: draw-device.c:fz_unread_byte Unexecuted instantiation: draw-glyph.c:fz_unread_byte Unexecuted instantiation: draw-mesh.c:fz_unread_byte Unexecuted instantiation: draw-paint.c:fz_unread_byte Unexecuted instantiation: draw-path.c:fz_unread_byte Unexecuted instantiation: draw-rasterize.c:fz_unread_byte Unexecuted instantiation: draw-scale-simple.c:fz_unread_byte Unexecuted instantiation: error.c:fz_unread_byte Unexecuted instantiation: font.c:fz_unread_byte Unexecuted instantiation: geometry.c:fz_unread_byte Unexecuted instantiation: glyph.c:fz_unread_byte Unexecuted instantiation: gz-doc.c:fz_unread_byte Unexecuted instantiation: hash.c:fz_unread_byte Unexecuted instantiation: hyphen.c:fz_unread_byte Unexecuted instantiation: image.c:fz_unread_byte Unexecuted instantiation: link.c:fz_unread_byte Unexecuted instantiation: list-device.c:fz_unread_byte Unexecuted instantiation: load-bmp.c:fz_unread_byte Unexecuted instantiation: load-gif.c:fz_unread_byte Unexecuted instantiation: load-jbig2.c:fz_unread_byte Unexecuted instantiation: load-jpeg.c:fz_unread_byte Unexecuted instantiation: load-jpx.c:fz_unread_byte Unexecuted instantiation: load-jxr.c:fz_unread_byte Unexecuted instantiation: load-png.c:fz_unread_byte Unexecuted instantiation: load-pnm.c:fz_unread_byte Unexecuted instantiation: load-psd.c:fz_unread_byte Unexecuted instantiation: load-tiff.c:fz_unread_byte Unexecuted instantiation: memory.c:fz_unread_byte Unexecuted instantiation: noto.c:fz_unread_byte Unexecuted instantiation: options.c:fz_unread_byte Unexecuted instantiation: outline.c:fz_unread_byte Unexecuted instantiation: output.c:fz_unread_byte Unexecuted instantiation: path.c:fz_unread_byte Unexecuted instantiation: pixmap.c:fz_unread_byte Unexecuted instantiation: pool.c:fz_unread_byte Unexecuted instantiation: printf.c:fz_unread_byte Unexecuted instantiation: random.c:fz_unread_byte Unexecuted instantiation: separation.c:fz_unread_byte Unexecuted instantiation: shade.c:fz_unread_byte Unexecuted instantiation: store.c:fz_unread_byte Unexecuted instantiation: stream-open.c:fz_unread_byte Unexecuted instantiation: stream-read.c:fz_unread_byte Unexecuted instantiation: string.c:fz_unread_byte Unexecuted instantiation: strtof.c:fz_unread_byte Unexecuted instantiation: text.c:fz_unread_byte Unexecuted instantiation: ucdn.c:fz_unread_byte Unexecuted instantiation: unzip.c:fz_unread_byte Unexecuted instantiation: util.c:fz_unread_byte Unexecuted instantiation: writer.c:fz_unread_byte Unexecuted instantiation: pdf-write.c:fz_unread_byte Unexecuted instantiation: pdf-xref.c:fz_unread_byte Unexecuted instantiation: xps-doc.c:fz_unread_byte Unexecuted instantiation: xps-link.c:fz_unread_byte Unexecuted instantiation: xps-path.c:fz_unread_byte Unexecuted instantiation: xps-resource.c:fz_unread_byte Unexecuted instantiation: xps-tile.c:fz_unread_byte Unexecuted instantiation: xps-util.c:fz_unread_byte Unexecuted instantiation: xps-zip.c:fz_unread_byte Unexecuted instantiation: svg-doc.c:fz_unread_byte Unexecuted instantiation: svg-run.c:fz_unread_byte Unexecuted instantiation: epub-doc.c:fz_unread_byte Unexecuted instantiation: html-doc.c:fz_unread_byte Unexecuted instantiation: html-font.c:fz_unread_byte Unexecuted instantiation: html-layout.c:fz_unread_byte Unexecuted instantiation: html-outline.c:fz_unread_byte Unexecuted instantiation: html-parse.c:fz_unread_byte Unexecuted instantiation: mobi.c:fz_unread_byte Unexecuted instantiation: office.c:fz_unread_byte Unexecuted instantiation: txt.c:fz_unread_byte Unexecuted instantiation: mucbz.c:fz_unread_byte Unexecuted instantiation: muimg.c:fz_unread_byte Unexecuted instantiation: archive.c:fz_unread_byte Unexecuted instantiation: bbox-device.c:fz_unread_byte Unexecuted instantiation: bidi.c:fz_unread_byte Unexecuted instantiation: bitmap.c:fz_unread_byte Unexecuted instantiation: brotli.c:fz_unread_byte Unexecuted instantiation: buffer.c:fz_unread_byte Unexecuted instantiation: color-fast.c:fz_unread_byte Unexecuted instantiation: color-icc-create.c:fz_unread_byte Unexecuted instantiation: color-lcms.c:fz_unread_byte Unexecuted instantiation: compressed-buffer.c:fz_unread_byte Unexecuted instantiation: crypt-md5.c:fz_unread_byte Unexecuted instantiation: device.c:fz_unread_byte Unexecuted instantiation: directory.c:fz_unread_byte Unexecuted instantiation: draw-affine.c:fz_unread_byte Unexecuted instantiation: draw-blend.c:fz_unread_byte Unexecuted instantiation: draw-edge.c:fz_unread_byte Unexecuted instantiation: draw-edgebuffer.c:fz_unread_byte Unexecuted instantiation: draw-unpack.c:fz_unread_byte Unexecuted instantiation: encode-fax.c:fz_unread_byte Unexecuted instantiation: encodings.c:fz_unread_byte Unexecuted instantiation: filter-basic.c:fz_unread_byte Unexecuted instantiation: filter-brotli.c:fz_unread_byte Unexecuted instantiation: filter-dct.c:fz_unread_byte Unexecuted instantiation: filter-fax.c:fz_unread_byte Unexecuted instantiation: filter-flate.c:fz_unread_byte Unexecuted instantiation: filter-jbig2.c:fz_unread_byte Unexecuted instantiation: filter-lzw.c:fz_unread_byte Unexecuted instantiation: filter-predict.c:fz_unread_byte Unexecuted instantiation: filter-sgi.c:fz_unread_byte Unexecuted instantiation: filter-thunder.c:fz_unread_byte Unexecuted instantiation: ftoa.c:fz_unread_byte Unexecuted instantiation: halftone.c:fz_unread_byte Unexecuted instantiation: harfbuzz.c:fz_unread_byte Unexecuted instantiation: output-cbz.c:fz_unread_byte Unexecuted instantiation: output-csv.c:fz_unread_byte Unexecuted instantiation: output-docx.c:fz_unread_byte Unexecuted instantiation: output-jpeg.c:fz_unread_byte Unexecuted instantiation: output-pcl.c:fz_unread_byte Unexecuted instantiation: output-pclm.c:fz_unread_byte Unexecuted instantiation: output-pdfocr.c:fz_unread_byte Unexecuted instantiation: output-png.c:fz_unread_byte Unexecuted instantiation: output-pnm.c:fz_unread_byte Unexecuted instantiation: output-ps.c:fz_unread_byte Unexecuted instantiation: output-pwg.c:fz_unread_byte Unexecuted instantiation: output-svg.c:fz_unread_byte Unexecuted instantiation: stext-device.c:fz_unread_byte Unexecuted instantiation: stext-output.c:fz_unread_byte Unexecuted instantiation: stext-para.c:fz_unread_byte Unexecuted instantiation: stext-search.c:fz_unread_byte Unexecuted instantiation: stext-table.c:fz_unread_byte Unexecuted instantiation: svg-device.c:fz_unread_byte Unexecuted instantiation: tree.c:fz_unread_byte Unexecuted instantiation: uncfb.c:fz_unread_byte Unexecuted instantiation: unlibarchive.c:fz_unread_byte Unexecuted instantiation: untar.c:fz_unread_byte Unexecuted instantiation: xml.c:fz_unread_byte Unexecuted instantiation: zip.c:fz_unread_byte Unexecuted instantiation: pdf-annot.c:fz_unread_byte Unexecuted instantiation: pdf-appearance.c:fz_unread_byte Unexecuted instantiation: pdf-clean.c:fz_unread_byte Unexecuted instantiation: pdf-colorspace.c:fz_unread_byte Unexecuted instantiation: pdf-crypt.c:fz_unread_byte Unexecuted instantiation: pdf-device.c:fz_unread_byte Unexecuted instantiation: pdf-event.c:fz_unread_byte Unexecuted instantiation: pdf-font-add.c:fz_unread_byte Unexecuted instantiation: pdf-font.c:fz_unread_byte Unexecuted instantiation: pdf-form.c:fz_unread_byte Unexecuted instantiation: pdf-function.c:fz_unread_byte Unexecuted instantiation: pdf-image.c:fz_unread_byte Unexecuted instantiation: pdf-interpret.c:fz_unread_byte Unexecuted instantiation: pdf-js.c:fz_unread_byte Unexecuted instantiation: pdf-label.c:fz_unread_byte Unexecuted instantiation: pdf-layer.c:fz_unread_byte Unexecuted instantiation: pdf-layout.c:fz_unread_byte Line | Count | Source | 502 | 1.29M | { | 503 | 1.29M | stm->rp--; | 504 | 1.29M | } |
Unexecuted instantiation: pdf-link.c:fz_unread_byte Unexecuted instantiation: pdf-metrics.c:fz_unread_byte Unexecuted instantiation: pdf-nametree.c:fz_unread_byte Unexecuted instantiation: pdf-object.c:fz_unread_byte Unexecuted instantiation: pdf-op-buffer.c:fz_unread_byte Unexecuted instantiation: pdf-op-filter.c:fz_unread_byte Unexecuted instantiation: pdf-op-run.c:fz_unread_byte Unexecuted instantiation: pdf-op-vectorize.c:fz_unread_byte Unexecuted instantiation: pdf-outline.c:fz_unread_byte Unexecuted instantiation: pdf-page.c:fz_unread_byte Unexecuted instantiation: pdf-parse.c:fz_unread_byte Unexecuted instantiation: pdf-pattern.c:fz_unread_byte pdf-repair.c:fz_unread_byte Line | Count | Source | 502 | 10 | { | 503 | 10 | stm->rp--; | 504 | 10 | } |
Unexecuted instantiation: pdf-resources.c:fz_unread_byte Unexecuted instantiation: pdf-run.c:fz_unread_byte Unexecuted instantiation: pdf-shade.c:fz_unread_byte Unexecuted instantiation: pdf-signature.c:fz_unread_byte Unexecuted instantiation: pdf-store.c:fz_unread_byte Unexecuted instantiation: pdf-stream.c:fz_unread_byte Unexecuted instantiation: pdf-type3.c:fz_unread_byte Unexecuted instantiation: pdf-unicode.c:fz_unread_byte Unexecuted instantiation: pdf-xobject.c:fz_unread_byte Unexecuted instantiation: xps-common.c:fz_unread_byte Unexecuted instantiation: xps-glyphs.c:fz_unread_byte Unexecuted instantiation: xps-gradient.c:fz_unread_byte Unexecuted instantiation: xps-image.c:fz_unread_byte Unexecuted instantiation: xps-outline.c:fz_unread_byte Unexecuted instantiation: svg-color.c:fz_unread_byte Unexecuted instantiation: svg-parse.c:fz_unread_byte Unexecuted instantiation: css-apply.c:fz_unread_byte Unexecuted instantiation: css-parse.c:fz_unread_byte Unexecuted instantiation: bidi-std.c:fz_unread_byte Unexecuted instantiation: compress.c:fz_unread_byte Unexecuted instantiation: crypt-aes.c:fz_unread_byte Unexecuted instantiation: crypt-arc4.c:fz_unread_byte Unexecuted instantiation: crypt-sha2.c:fz_unread_byte Unexecuted instantiation: filter-leech.c:fz_unread_byte Unexecuted instantiation: glyphbox.c:fz_unread_byte Unexecuted instantiation: stext-boxer.c:fz_unread_byte Unexecuted instantiation: stext-iterator.c:fz_unread_byte Unexecuted instantiation: stext-raft.c:fz_unread_byte Unexecuted instantiation: text-decoder.c:fz_unread_byte Unexecuted instantiation: pdf-cmap-load.c:fz_unread_byte Unexecuted instantiation: pdf-cmap-parse.c:fz_unread_byte Unexecuted instantiation: pdf-cmap.c:fz_unread_byte |
505 | | |
506 | | /** |
507 | | Query if the stream has reached EOF (during normal bytewise |
508 | | reading). |
509 | | |
510 | | See fz_is_eof_bits for the equivalent function for bitwise |
511 | | reading. |
512 | | */ |
513 | | static inline int fz_is_eof(fz_context *ctx, fz_stream *stm) |
514 | 0 | { |
515 | 0 | if (stm->rp == stm->wp) |
516 | 0 | { |
517 | 0 | if (stm->eof) |
518 | 0 | return 1; |
519 | 0 | return fz_peek_byte(ctx, stm) == EOF; |
520 | 0 | } |
521 | 0 | return 0; |
522 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_is_eof(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_is_eof Unexecuted instantiation: context.c:fz_is_eof Unexecuted instantiation: document-all.c:fz_is_eof Unexecuted instantiation: document.c:fz_is_eof Unexecuted instantiation: draw-device.c:fz_is_eof Unexecuted instantiation: draw-glyph.c:fz_is_eof Unexecuted instantiation: draw-mesh.c:fz_is_eof Unexecuted instantiation: draw-paint.c:fz_is_eof Unexecuted instantiation: draw-path.c:fz_is_eof Unexecuted instantiation: draw-rasterize.c:fz_is_eof Unexecuted instantiation: draw-scale-simple.c:fz_is_eof Unexecuted instantiation: error.c:fz_is_eof Unexecuted instantiation: font.c:fz_is_eof Unexecuted instantiation: geometry.c:fz_is_eof Unexecuted instantiation: glyph.c:fz_is_eof Unexecuted instantiation: gz-doc.c:fz_is_eof Unexecuted instantiation: hash.c:fz_is_eof Unexecuted instantiation: hyphen.c:fz_is_eof Unexecuted instantiation: image.c:fz_is_eof Unexecuted instantiation: link.c:fz_is_eof Unexecuted instantiation: list-device.c:fz_is_eof Unexecuted instantiation: load-bmp.c:fz_is_eof Unexecuted instantiation: load-gif.c:fz_is_eof Unexecuted instantiation: load-jbig2.c:fz_is_eof Unexecuted instantiation: load-jpeg.c:fz_is_eof Unexecuted instantiation: load-jpx.c:fz_is_eof Unexecuted instantiation: load-jxr.c:fz_is_eof Unexecuted instantiation: load-png.c:fz_is_eof Unexecuted instantiation: load-pnm.c:fz_is_eof Unexecuted instantiation: load-psd.c:fz_is_eof Unexecuted instantiation: load-tiff.c:fz_is_eof Unexecuted instantiation: memory.c:fz_is_eof Unexecuted instantiation: noto.c:fz_is_eof Unexecuted instantiation: options.c:fz_is_eof Unexecuted instantiation: outline.c:fz_is_eof Unexecuted instantiation: output.c:fz_is_eof Unexecuted instantiation: path.c:fz_is_eof Unexecuted instantiation: pixmap.c:fz_is_eof Unexecuted instantiation: pool.c:fz_is_eof Unexecuted instantiation: printf.c:fz_is_eof Unexecuted instantiation: random.c:fz_is_eof Unexecuted instantiation: separation.c:fz_is_eof Unexecuted instantiation: shade.c:fz_is_eof Unexecuted instantiation: store.c:fz_is_eof Unexecuted instantiation: stream-open.c:fz_is_eof Unexecuted instantiation: stream-read.c:fz_is_eof Unexecuted instantiation: string.c:fz_is_eof Unexecuted instantiation: strtof.c:fz_is_eof Unexecuted instantiation: text.c:fz_is_eof Unexecuted instantiation: ucdn.c:fz_is_eof Unexecuted instantiation: unzip.c:fz_is_eof Unexecuted instantiation: util.c:fz_is_eof Unexecuted instantiation: writer.c:fz_is_eof Unexecuted instantiation: pdf-write.c:fz_is_eof Unexecuted instantiation: pdf-xref.c:fz_is_eof Unexecuted instantiation: xps-doc.c:fz_is_eof Unexecuted instantiation: xps-link.c:fz_is_eof Unexecuted instantiation: xps-path.c:fz_is_eof Unexecuted instantiation: xps-resource.c:fz_is_eof Unexecuted instantiation: xps-tile.c:fz_is_eof Unexecuted instantiation: xps-util.c:fz_is_eof Unexecuted instantiation: xps-zip.c:fz_is_eof Unexecuted instantiation: svg-doc.c:fz_is_eof Unexecuted instantiation: svg-run.c:fz_is_eof Unexecuted instantiation: epub-doc.c:fz_is_eof Unexecuted instantiation: html-doc.c:fz_is_eof Unexecuted instantiation: html-font.c:fz_is_eof Unexecuted instantiation: html-layout.c:fz_is_eof Unexecuted instantiation: html-outline.c:fz_is_eof Unexecuted instantiation: html-parse.c:fz_is_eof Unexecuted instantiation: mobi.c:fz_is_eof Unexecuted instantiation: office.c:fz_is_eof Unexecuted instantiation: txt.c:fz_is_eof Unexecuted instantiation: mucbz.c:fz_is_eof Unexecuted instantiation: muimg.c:fz_is_eof Unexecuted instantiation: archive.c:fz_is_eof Unexecuted instantiation: bbox-device.c:fz_is_eof Unexecuted instantiation: bidi.c:fz_is_eof Unexecuted instantiation: bitmap.c:fz_is_eof Unexecuted instantiation: brotli.c:fz_is_eof Unexecuted instantiation: buffer.c:fz_is_eof Unexecuted instantiation: color-fast.c:fz_is_eof Unexecuted instantiation: color-icc-create.c:fz_is_eof Unexecuted instantiation: color-lcms.c:fz_is_eof Unexecuted instantiation: compressed-buffer.c:fz_is_eof Unexecuted instantiation: crypt-md5.c:fz_is_eof Unexecuted instantiation: device.c:fz_is_eof Unexecuted instantiation: directory.c:fz_is_eof Unexecuted instantiation: draw-affine.c:fz_is_eof Unexecuted instantiation: draw-blend.c:fz_is_eof Unexecuted instantiation: draw-edge.c:fz_is_eof Unexecuted instantiation: draw-edgebuffer.c:fz_is_eof Unexecuted instantiation: draw-unpack.c:fz_is_eof Unexecuted instantiation: encode-fax.c:fz_is_eof Unexecuted instantiation: encodings.c:fz_is_eof Unexecuted instantiation: filter-basic.c:fz_is_eof Unexecuted instantiation: filter-brotli.c:fz_is_eof Unexecuted instantiation: filter-dct.c:fz_is_eof Unexecuted instantiation: filter-fax.c:fz_is_eof Unexecuted instantiation: filter-flate.c:fz_is_eof Unexecuted instantiation: filter-jbig2.c:fz_is_eof Unexecuted instantiation: filter-lzw.c:fz_is_eof Unexecuted instantiation: filter-predict.c:fz_is_eof Unexecuted instantiation: filter-sgi.c:fz_is_eof Unexecuted instantiation: filter-thunder.c:fz_is_eof Unexecuted instantiation: ftoa.c:fz_is_eof Unexecuted instantiation: halftone.c:fz_is_eof Unexecuted instantiation: harfbuzz.c:fz_is_eof Unexecuted instantiation: output-cbz.c:fz_is_eof Unexecuted instantiation: output-csv.c:fz_is_eof Unexecuted instantiation: output-docx.c:fz_is_eof Unexecuted instantiation: output-jpeg.c:fz_is_eof Unexecuted instantiation: output-pcl.c:fz_is_eof Unexecuted instantiation: output-pclm.c:fz_is_eof Unexecuted instantiation: output-pdfocr.c:fz_is_eof Unexecuted instantiation: output-png.c:fz_is_eof Unexecuted instantiation: output-pnm.c:fz_is_eof Unexecuted instantiation: output-ps.c:fz_is_eof Unexecuted instantiation: output-pwg.c:fz_is_eof Unexecuted instantiation: output-svg.c:fz_is_eof Unexecuted instantiation: stext-device.c:fz_is_eof Unexecuted instantiation: stext-output.c:fz_is_eof Unexecuted instantiation: stext-para.c:fz_is_eof Unexecuted instantiation: stext-search.c:fz_is_eof Unexecuted instantiation: stext-table.c:fz_is_eof Unexecuted instantiation: svg-device.c:fz_is_eof Unexecuted instantiation: tree.c:fz_is_eof Unexecuted instantiation: uncfb.c:fz_is_eof Unexecuted instantiation: unlibarchive.c:fz_is_eof Unexecuted instantiation: untar.c:fz_is_eof Unexecuted instantiation: xml.c:fz_is_eof Unexecuted instantiation: zip.c:fz_is_eof Unexecuted instantiation: pdf-annot.c:fz_is_eof Unexecuted instantiation: pdf-appearance.c:fz_is_eof Unexecuted instantiation: pdf-clean.c:fz_is_eof Unexecuted instantiation: pdf-colorspace.c:fz_is_eof Unexecuted instantiation: pdf-crypt.c:fz_is_eof Unexecuted instantiation: pdf-device.c:fz_is_eof Unexecuted instantiation: pdf-event.c:fz_is_eof Unexecuted instantiation: pdf-font-add.c:fz_is_eof Unexecuted instantiation: pdf-font.c:fz_is_eof Unexecuted instantiation: pdf-form.c:fz_is_eof Unexecuted instantiation: pdf-function.c:fz_is_eof Unexecuted instantiation: pdf-image.c:fz_is_eof Unexecuted instantiation: pdf-interpret.c:fz_is_eof Unexecuted instantiation: pdf-js.c:fz_is_eof Unexecuted instantiation: pdf-label.c:fz_is_eof Unexecuted instantiation: pdf-layer.c:fz_is_eof Unexecuted instantiation: pdf-layout.c:fz_is_eof Unexecuted instantiation: pdf-lex.c:fz_is_eof Unexecuted instantiation: pdf-link.c:fz_is_eof Unexecuted instantiation: pdf-metrics.c:fz_is_eof Unexecuted instantiation: pdf-nametree.c:fz_is_eof Unexecuted instantiation: pdf-object.c:fz_is_eof Unexecuted instantiation: pdf-op-buffer.c:fz_is_eof Unexecuted instantiation: pdf-op-filter.c:fz_is_eof Unexecuted instantiation: pdf-op-run.c:fz_is_eof Unexecuted instantiation: pdf-op-vectorize.c:fz_is_eof Unexecuted instantiation: pdf-outline.c:fz_is_eof Unexecuted instantiation: pdf-page.c:fz_is_eof Unexecuted instantiation: pdf-parse.c:fz_is_eof Unexecuted instantiation: pdf-pattern.c:fz_is_eof Unexecuted instantiation: pdf-repair.c:fz_is_eof Unexecuted instantiation: pdf-resources.c:fz_is_eof Unexecuted instantiation: pdf-run.c:fz_is_eof Unexecuted instantiation: pdf-shade.c:fz_is_eof Unexecuted instantiation: pdf-signature.c:fz_is_eof Unexecuted instantiation: pdf-store.c:fz_is_eof Unexecuted instantiation: pdf-stream.c:fz_is_eof Unexecuted instantiation: pdf-type3.c:fz_is_eof Unexecuted instantiation: pdf-unicode.c:fz_is_eof Unexecuted instantiation: pdf-xobject.c:fz_is_eof Unexecuted instantiation: xps-common.c:fz_is_eof Unexecuted instantiation: xps-glyphs.c:fz_is_eof Unexecuted instantiation: xps-gradient.c:fz_is_eof Unexecuted instantiation: xps-image.c:fz_is_eof Unexecuted instantiation: xps-outline.c:fz_is_eof Unexecuted instantiation: svg-color.c:fz_is_eof Unexecuted instantiation: svg-parse.c:fz_is_eof Unexecuted instantiation: css-apply.c:fz_is_eof Unexecuted instantiation: css-parse.c:fz_is_eof Unexecuted instantiation: bidi-std.c:fz_is_eof Unexecuted instantiation: compress.c:fz_is_eof Unexecuted instantiation: crypt-aes.c:fz_is_eof Unexecuted instantiation: crypt-arc4.c:fz_is_eof Unexecuted instantiation: crypt-sha2.c:fz_is_eof Unexecuted instantiation: filter-leech.c:fz_is_eof Unexecuted instantiation: glyphbox.c:fz_is_eof Unexecuted instantiation: stext-boxer.c:fz_is_eof Unexecuted instantiation: stext-iterator.c:fz_is_eof Unexecuted instantiation: stext-raft.c:fz_is_eof Unexecuted instantiation: text-decoder.c:fz_is_eof Unexecuted instantiation: pdf-cmap-load.c:fz_is_eof Unexecuted instantiation: pdf-cmap-parse.c:fz_is_eof Unexecuted instantiation: pdf-cmap.c:fz_is_eof |
523 | | |
524 | | /** |
525 | | Read the next n bits from a stream (assumed to |
526 | | be packed most significant bit first). |
527 | | |
528 | | stm: The stream to read from. |
529 | | |
530 | | n: The number of bits to read, between 1 and 8*sizeof(int) |
531 | | inclusive. |
532 | | |
533 | | Returns -1 for EOF, or the required number of bits. |
534 | | */ |
535 | | static inline unsigned int fz_read_bits(fz_context *ctx, fz_stream *stm, int n) |
536 | 0 | { |
537 | 0 | int x; |
538 | |
|
539 | 0 | if (n <= stm->avail) |
540 | 0 | { |
541 | 0 | stm->avail -= n; |
542 | 0 | x = (stm->bits >> stm->avail) & ((1 << n) - 1); |
543 | 0 | } |
544 | 0 | else |
545 | 0 | { |
546 | 0 | x = stm->bits & ((1 << stm->avail) - 1); |
547 | 0 | n -= stm->avail; |
548 | 0 | stm->avail = 0; |
549 | |
|
550 | 0 | while (n > 8) |
551 | 0 | { |
552 | 0 | x = (x << 8) | fz_read_byte(ctx, stm); |
553 | 0 | n -= 8; |
554 | 0 | } |
555 | |
|
556 | 0 | if (n > 0) |
557 | 0 | { |
558 | 0 | stm->bits = fz_read_byte(ctx, stm); |
559 | 0 | stm->avail = 8 - n; |
560 | 0 | x = (x << n) | (stm->bits >> stm->avail); |
561 | 0 | } |
562 | 0 | } |
563 | |
|
564 | 0 | return x; |
565 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_read_bits(fz_context*, fz_stream*, int) Unexecuted instantiation: colorspace.c:fz_read_bits Unexecuted instantiation: context.c:fz_read_bits Unexecuted instantiation: document-all.c:fz_read_bits Unexecuted instantiation: document.c:fz_read_bits Unexecuted instantiation: draw-device.c:fz_read_bits Unexecuted instantiation: draw-glyph.c:fz_read_bits Unexecuted instantiation: draw-mesh.c:fz_read_bits Unexecuted instantiation: draw-paint.c:fz_read_bits Unexecuted instantiation: draw-path.c:fz_read_bits Unexecuted instantiation: draw-rasterize.c:fz_read_bits Unexecuted instantiation: draw-scale-simple.c:fz_read_bits Unexecuted instantiation: error.c:fz_read_bits Unexecuted instantiation: font.c:fz_read_bits Unexecuted instantiation: geometry.c:fz_read_bits Unexecuted instantiation: glyph.c:fz_read_bits Unexecuted instantiation: gz-doc.c:fz_read_bits Unexecuted instantiation: hash.c:fz_read_bits Unexecuted instantiation: hyphen.c:fz_read_bits Unexecuted instantiation: image.c:fz_read_bits Unexecuted instantiation: link.c:fz_read_bits Unexecuted instantiation: list-device.c:fz_read_bits Unexecuted instantiation: load-bmp.c:fz_read_bits Unexecuted instantiation: load-gif.c:fz_read_bits Unexecuted instantiation: load-jbig2.c:fz_read_bits Unexecuted instantiation: load-jpeg.c:fz_read_bits Unexecuted instantiation: load-jpx.c:fz_read_bits Unexecuted instantiation: load-jxr.c:fz_read_bits Unexecuted instantiation: load-png.c:fz_read_bits Unexecuted instantiation: load-pnm.c:fz_read_bits Unexecuted instantiation: load-psd.c:fz_read_bits Unexecuted instantiation: load-tiff.c:fz_read_bits Unexecuted instantiation: memory.c:fz_read_bits Unexecuted instantiation: noto.c:fz_read_bits Unexecuted instantiation: options.c:fz_read_bits Unexecuted instantiation: outline.c:fz_read_bits Unexecuted instantiation: output.c:fz_read_bits Unexecuted instantiation: path.c:fz_read_bits Unexecuted instantiation: pixmap.c:fz_read_bits Unexecuted instantiation: pool.c:fz_read_bits Unexecuted instantiation: printf.c:fz_read_bits Unexecuted instantiation: random.c:fz_read_bits Unexecuted instantiation: separation.c:fz_read_bits Unexecuted instantiation: shade.c:fz_read_bits Unexecuted instantiation: store.c:fz_read_bits Unexecuted instantiation: stream-open.c:fz_read_bits Unexecuted instantiation: stream-read.c:fz_read_bits Unexecuted instantiation: string.c:fz_read_bits Unexecuted instantiation: strtof.c:fz_read_bits Unexecuted instantiation: text.c:fz_read_bits Unexecuted instantiation: ucdn.c:fz_read_bits Unexecuted instantiation: unzip.c:fz_read_bits Unexecuted instantiation: util.c:fz_read_bits Unexecuted instantiation: writer.c:fz_read_bits Unexecuted instantiation: pdf-write.c:fz_read_bits Unexecuted instantiation: pdf-xref.c:fz_read_bits Unexecuted instantiation: xps-doc.c:fz_read_bits Unexecuted instantiation: xps-link.c:fz_read_bits Unexecuted instantiation: xps-path.c:fz_read_bits Unexecuted instantiation: xps-resource.c:fz_read_bits Unexecuted instantiation: xps-tile.c:fz_read_bits Unexecuted instantiation: xps-util.c:fz_read_bits Unexecuted instantiation: xps-zip.c:fz_read_bits Unexecuted instantiation: svg-doc.c:fz_read_bits Unexecuted instantiation: svg-run.c:fz_read_bits Unexecuted instantiation: epub-doc.c:fz_read_bits Unexecuted instantiation: html-doc.c:fz_read_bits Unexecuted instantiation: html-font.c:fz_read_bits Unexecuted instantiation: html-layout.c:fz_read_bits Unexecuted instantiation: html-outline.c:fz_read_bits Unexecuted instantiation: html-parse.c:fz_read_bits Unexecuted instantiation: mobi.c:fz_read_bits Unexecuted instantiation: office.c:fz_read_bits Unexecuted instantiation: txt.c:fz_read_bits Unexecuted instantiation: mucbz.c:fz_read_bits Unexecuted instantiation: muimg.c:fz_read_bits Unexecuted instantiation: archive.c:fz_read_bits Unexecuted instantiation: bbox-device.c:fz_read_bits Unexecuted instantiation: bidi.c:fz_read_bits Unexecuted instantiation: bitmap.c:fz_read_bits Unexecuted instantiation: brotli.c:fz_read_bits Unexecuted instantiation: buffer.c:fz_read_bits Unexecuted instantiation: color-fast.c:fz_read_bits Unexecuted instantiation: color-icc-create.c:fz_read_bits Unexecuted instantiation: color-lcms.c:fz_read_bits Unexecuted instantiation: compressed-buffer.c:fz_read_bits Unexecuted instantiation: crypt-md5.c:fz_read_bits Unexecuted instantiation: device.c:fz_read_bits Unexecuted instantiation: directory.c:fz_read_bits Unexecuted instantiation: draw-affine.c:fz_read_bits Unexecuted instantiation: draw-blend.c:fz_read_bits Unexecuted instantiation: draw-edge.c:fz_read_bits Unexecuted instantiation: draw-edgebuffer.c:fz_read_bits Unexecuted instantiation: draw-unpack.c:fz_read_bits Unexecuted instantiation: encode-fax.c:fz_read_bits Unexecuted instantiation: encodings.c:fz_read_bits Unexecuted instantiation: filter-basic.c:fz_read_bits Unexecuted instantiation: filter-brotli.c:fz_read_bits Unexecuted instantiation: filter-dct.c:fz_read_bits Unexecuted instantiation: filter-fax.c:fz_read_bits Unexecuted instantiation: filter-flate.c:fz_read_bits Unexecuted instantiation: filter-jbig2.c:fz_read_bits Unexecuted instantiation: filter-lzw.c:fz_read_bits Unexecuted instantiation: filter-predict.c:fz_read_bits Unexecuted instantiation: filter-sgi.c:fz_read_bits Unexecuted instantiation: filter-thunder.c:fz_read_bits Unexecuted instantiation: ftoa.c:fz_read_bits Unexecuted instantiation: halftone.c:fz_read_bits Unexecuted instantiation: harfbuzz.c:fz_read_bits Unexecuted instantiation: output-cbz.c:fz_read_bits Unexecuted instantiation: output-csv.c:fz_read_bits Unexecuted instantiation: output-docx.c:fz_read_bits Unexecuted instantiation: output-jpeg.c:fz_read_bits Unexecuted instantiation: output-pcl.c:fz_read_bits Unexecuted instantiation: output-pclm.c:fz_read_bits Unexecuted instantiation: output-pdfocr.c:fz_read_bits Unexecuted instantiation: output-png.c:fz_read_bits Unexecuted instantiation: output-pnm.c:fz_read_bits Unexecuted instantiation: output-ps.c:fz_read_bits Unexecuted instantiation: output-pwg.c:fz_read_bits Unexecuted instantiation: output-svg.c:fz_read_bits Unexecuted instantiation: stext-device.c:fz_read_bits Unexecuted instantiation: stext-output.c:fz_read_bits Unexecuted instantiation: stext-para.c:fz_read_bits Unexecuted instantiation: stext-search.c:fz_read_bits Unexecuted instantiation: stext-table.c:fz_read_bits Unexecuted instantiation: svg-device.c:fz_read_bits Unexecuted instantiation: tree.c:fz_read_bits Unexecuted instantiation: uncfb.c:fz_read_bits Unexecuted instantiation: unlibarchive.c:fz_read_bits Unexecuted instantiation: untar.c:fz_read_bits Unexecuted instantiation: xml.c:fz_read_bits Unexecuted instantiation: zip.c:fz_read_bits Unexecuted instantiation: pdf-annot.c:fz_read_bits Unexecuted instantiation: pdf-appearance.c:fz_read_bits Unexecuted instantiation: pdf-clean.c:fz_read_bits Unexecuted instantiation: pdf-colorspace.c:fz_read_bits Unexecuted instantiation: pdf-crypt.c:fz_read_bits Unexecuted instantiation: pdf-device.c:fz_read_bits Unexecuted instantiation: pdf-event.c:fz_read_bits Unexecuted instantiation: pdf-font-add.c:fz_read_bits Unexecuted instantiation: pdf-font.c:fz_read_bits Unexecuted instantiation: pdf-form.c:fz_read_bits Unexecuted instantiation: pdf-function.c:fz_read_bits Unexecuted instantiation: pdf-image.c:fz_read_bits Unexecuted instantiation: pdf-interpret.c:fz_read_bits Unexecuted instantiation: pdf-js.c:fz_read_bits Unexecuted instantiation: pdf-label.c:fz_read_bits Unexecuted instantiation: pdf-layer.c:fz_read_bits Unexecuted instantiation: pdf-layout.c:fz_read_bits Unexecuted instantiation: pdf-lex.c:fz_read_bits Unexecuted instantiation: pdf-link.c:fz_read_bits Unexecuted instantiation: pdf-metrics.c:fz_read_bits Unexecuted instantiation: pdf-nametree.c:fz_read_bits Unexecuted instantiation: pdf-object.c:fz_read_bits Unexecuted instantiation: pdf-op-buffer.c:fz_read_bits Unexecuted instantiation: pdf-op-filter.c:fz_read_bits Unexecuted instantiation: pdf-op-run.c:fz_read_bits Unexecuted instantiation: pdf-op-vectorize.c:fz_read_bits Unexecuted instantiation: pdf-outline.c:fz_read_bits Unexecuted instantiation: pdf-page.c:fz_read_bits Unexecuted instantiation: pdf-parse.c:fz_read_bits Unexecuted instantiation: pdf-pattern.c:fz_read_bits Unexecuted instantiation: pdf-repair.c:fz_read_bits Unexecuted instantiation: pdf-resources.c:fz_read_bits Unexecuted instantiation: pdf-run.c:fz_read_bits Unexecuted instantiation: pdf-shade.c:fz_read_bits Unexecuted instantiation: pdf-signature.c:fz_read_bits Unexecuted instantiation: pdf-store.c:fz_read_bits Unexecuted instantiation: pdf-stream.c:fz_read_bits Unexecuted instantiation: pdf-type3.c:fz_read_bits Unexecuted instantiation: pdf-unicode.c:fz_read_bits Unexecuted instantiation: pdf-xobject.c:fz_read_bits Unexecuted instantiation: xps-common.c:fz_read_bits Unexecuted instantiation: xps-glyphs.c:fz_read_bits Unexecuted instantiation: xps-gradient.c:fz_read_bits Unexecuted instantiation: xps-image.c:fz_read_bits Unexecuted instantiation: xps-outline.c:fz_read_bits Unexecuted instantiation: svg-color.c:fz_read_bits Unexecuted instantiation: svg-parse.c:fz_read_bits Unexecuted instantiation: css-apply.c:fz_read_bits Unexecuted instantiation: css-parse.c:fz_read_bits Unexecuted instantiation: bidi-std.c:fz_read_bits Unexecuted instantiation: compress.c:fz_read_bits Unexecuted instantiation: crypt-aes.c:fz_read_bits Unexecuted instantiation: crypt-arc4.c:fz_read_bits Unexecuted instantiation: crypt-sha2.c:fz_read_bits Unexecuted instantiation: filter-leech.c:fz_read_bits Unexecuted instantiation: glyphbox.c:fz_read_bits Unexecuted instantiation: stext-boxer.c:fz_read_bits Unexecuted instantiation: stext-iterator.c:fz_read_bits Unexecuted instantiation: stext-raft.c:fz_read_bits Unexecuted instantiation: text-decoder.c:fz_read_bits Unexecuted instantiation: pdf-cmap-load.c:fz_read_bits Unexecuted instantiation: pdf-cmap-parse.c:fz_read_bits Unexecuted instantiation: pdf-cmap.c:fz_read_bits |
566 | | |
567 | | /** |
568 | | Read the next n bits from a stream (assumed to |
569 | | be packed least significant bit first). |
570 | | |
571 | | stm: The stream to read from. |
572 | | |
573 | | n: The number of bits to read, between 1 and 8*sizeof(int) |
574 | | inclusive. |
575 | | |
576 | | Returns (unsigned int)-1 for EOF, or the required number of bits. |
577 | | */ |
578 | | static inline unsigned int fz_read_rbits(fz_context *ctx, fz_stream *stm, int n) |
579 | 0 | { |
580 | 0 | int x; |
581 | |
|
582 | 0 | if (n <= stm->avail) |
583 | 0 | { |
584 | 0 | x = stm->bits & ((1 << n) - 1); |
585 | 0 | stm->avail -= n; |
586 | 0 | stm->bits = stm->bits >> n; |
587 | 0 | } |
588 | 0 | else |
589 | 0 | { |
590 | 0 | unsigned int used = 0; |
591 | |
|
592 | 0 | x = stm->bits & ((1 << stm->avail) - 1); |
593 | 0 | n -= stm->avail; |
594 | 0 | used = stm->avail; |
595 | 0 | stm->avail = 0; |
596 | |
|
597 | 0 | while (n > 8) |
598 | 0 | { |
599 | 0 | x = (fz_read_byte(ctx, stm) << used) | x; |
600 | 0 | n -= 8; |
601 | 0 | used += 8; |
602 | 0 | } |
603 | |
|
604 | 0 | if (n > 0) |
605 | 0 | { |
606 | 0 | stm->bits = fz_read_byte(ctx, stm); |
607 | 0 | x = ((stm->bits & ((1 << n) - 1)) << used) | x; |
608 | 0 | stm->avail = 8 - n; |
609 | 0 | stm->bits = stm->bits >> n; |
610 | 0 | } |
611 | 0 | } |
612 | |
|
613 | 0 | return x; |
614 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_read_rbits(fz_context*, fz_stream*, int) Unexecuted instantiation: colorspace.c:fz_read_rbits Unexecuted instantiation: context.c:fz_read_rbits Unexecuted instantiation: document-all.c:fz_read_rbits Unexecuted instantiation: document.c:fz_read_rbits Unexecuted instantiation: draw-device.c:fz_read_rbits Unexecuted instantiation: draw-glyph.c:fz_read_rbits Unexecuted instantiation: draw-mesh.c:fz_read_rbits Unexecuted instantiation: draw-paint.c:fz_read_rbits Unexecuted instantiation: draw-path.c:fz_read_rbits Unexecuted instantiation: draw-rasterize.c:fz_read_rbits Unexecuted instantiation: draw-scale-simple.c:fz_read_rbits Unexecuted instantiation: error.c:fz_read_rbits Unexecuted instantiation: font.c:fz_read_rbits Unexecuted instantiation: geometry.c:fz_read_rbits Unexecuted instantiation: glyph.c:fz_read_rbits Unexecuted instantiation: gz-doc.c:fz_read_rbits Unexecuted instantiation: hash.c:fz_read_rbits Unexecuted instantiation: hyphen.c:fz_read_rbits Unexecuted instantiation: image.c:fz_read_rbits Unexecuted instantiation: link.c:fz_read_rbits Unexecuted instantiation: list-device.c:fz_read_rbits Unexecuted instantiation: load-bmp.c:fz_read_rbits Unexecuted instantiation: load-gif.c:fz_read_rbits Unexecuted instantiation: load-jbig2.c:fz_read_rbits Unexecuted instantiation: load-jpeg.c:fz_read_rbits Unexecuted instantiation: load-jpx.c:fz_read_rbits Unexecuted instantiation: load-jxr.c:fz_read_rbits Unexecuted instantiation: load-png.c:fz_read_rbits Unexecuted instantiation: load-pnm.c:fz_read_rbits Unexecuted instantiation: load-psd.c:fz_read_rbits Unexecuted instantiation: load-tiff.c:fz_read_rbits Unexecuted instantiation: memory.c:fz_read_rbits Unexecuted instantiation: noto.c:fz_read_rbits Unexecuted instantiation: options.c:fz_read_rbits Unexecuted instantiation: outline.c:fz_read_rbits Unexecuted instantiation: output.c:fz_read_rbits Unexecuted instantiation: path.c:fz_read_rbits Unexecuted instantiation: pixmap.c:fz_read_rbits Unexecuted instantiation: pool.c:fz_read_rbits Unexecuted instantiation: printf.c:fz_read_rbits Unexecuted instantiation: random.c:fz_read_rbits Unexecuted instantiation: separation.c:fz_read_rbits Unexecuted instantiation: shade.c:fz_read_rbits Unexecuted instantiation: store.c:fz_read_rbits Unexecuted instantiation: stream-open.c:fz_read_rbits Unexecuted instantiation: stream-read.c:fz_read_rbits Unexecuted instantiation: string.c:fz_read_rbits Unexecuted instantiation: strtof.c:fz_read_rbits Unexecuted instantiation: text.c:fz_read_rbits Unexecuted instantiation: ucdn.c:fz_read_rbits Unexecuted instantiation: unzip.c:fz_read_rbits Unexecuted instantiation: util.c:fz_read_rbits Unexecuted instantiation: writer.c:fz_read_rbits Unexecuted instantiation: pdf-write.c:fz_read_rbits Unexecuted instantiation: pdf-xref.c:fz_read_rbits Unexecuted instantiation: xps-doc.c:fz_read_rbits Unexecuted instantiation: xps-link.c:fz_read_rbits Unexecuted instantiation: xps-path.c:fz_read_rbits Unexecuted instantiation: xps-resource.c:fz_read_rbits Unexecuted instantiation: xps-tile.c:fz_read_rbits Unexecuted instantiation: xps-util.c:fz_read_rbits Unexecuted instantiation: xps-zip.c:fz_read_rbits Unexecuted instantiation: svg-doc.c:fz_read_rbits Unexecuted instantiation: svg-run.c:fz_read_rbits Unexecuted instantiation: epub-doc.c:fz_read_rbits Unexecuted instantiation: html-doc.c:fz_read_rbits Unexecuted instantiation: html-font.c:fz_read_rbits Unexecuted instantiation: html-layout.c:fz_read_rbits Unexecuted instantiation: html-outline.c:fz_read_rbits Unexecuted instantiation: html-parse.c:fz_read_rbits Unexecuted instantiation: mobi.c:fz_read_rbits Unexecuted instantiation: office.c:fz_read_rbits Unexecuted instantiation: txt.c:fz_read_rbits Unexecuted instantiation: mucbz.c:fz_read_rbits Unexecuted instantiation: muimg.c:fz_read_rbits Unexecuted instantiation: archive.c:fz_read_rbits Unexecuted instantiation: bbox-device.c:fz_read_rbits Unexecuted instantiation: bidi.c:fz_read_rbits Unexecuted instantiation: bitmap.c:fz_read_rbits Unexecuted instantiation: brotli.c:fz_read_rbits Unexecuted instantiation: buffer.c:fz_read_rbits Unexecuted instantiation: color-fast.c:fz_read_rbits Unexecuted instantiation: color-icc-create.c:fz_read_rbits Unexecuted instantiation: color-lcms.c:fz_read_rbits Unexecuted instantiation: compressed-buffer.c:fz_read_rbits Unexecuted instantiation: crypt-md5.c:fz_read_rbits Unexecuted instantiation: device.c:fz_read_rbits Unexecuted instantiation: directory.c:fz_read_rbits Unexecuted instantiation: draw-affine.c:fz_read_rbits Unexecuted instantiation: draw-blend.c:fz_read_rbits Unexecuted instantiation: draw-edge.c:fz_read_rbits Unexecuted instantiation: draw-edgebuffer.c:fz_read_rbits Unexecuted instantiation: draw-unpack.c:fz_read_rbits Unexecuted instantiation: encode-fax.c:fz_read_rbits Unexecuted instantiation: encodings.c:fz_read_rbits Unexecuted instantiation: filter-basic.c:fz_read_rbits Unexecuted instantiation: filter-brotli.c:fz_read_rbits Unexecuted instantiation: filter-dct.c:fz_read_rbits Unexecuted instantiation: filter-fax.c:fz_read_rbits Unexecuted instantiation: filter-flate.c:fz_read_rbits Unexecuted instantiation: filter-jbig2.c:fz_read_rbits Unexecuted instantiation: filter-lzw.c:fz_read_rbits Unexecuted instantiation: filter-predict.c:fz_read_rbits Unexecuted instantiation: filter-sgi.c:fz_read_rbits Unexecuted instantiation: filter-thunder.c:fz_read_rbits Unexecuted instantiation: ftoa.c:fz_read_rbits Unexecuted instantiation: halftone.c:fz_read_rbits Unexecuted instantiation: harfbuzz.c:fz_read_rbits Unexecuted instantiation: output-cbz.c:fz_read_rbits Unexecuted instantiation: output-csv.c:fz_read_rbits Unexecuted instantiation: output-docx.c:fz_read_rbits Unexecuted instantiation: output-jpeg.c:fz_read_rbits Unexecuted instantiation: output-pcl.c:fz_read_rbits Unexecuted instantiation: output-pclm.c:fz_read_rbits Unexecuted instantiation: output-pdfocr.c:fz_read_rbits Unexecuted instantiation: output-png.c:fz_read_rbits Unexecuted instantiation: output-pnm.c:fz_read_rbits Unexecuted instantiation: output-ps.c:fz_read_rbits Unexecuted instantiation: output-pwg.c:fz_read_rbits Unexecuted instantiation: output-svg.c:fz_read_rbits Unexecuted instantiation: stext-device.c:fz_read_rbits Unexecuted instantiation: stext-output.c:fz_read_rbits Unexecuted instantiation: stext-para.c:fz_read_rbits Unexecuted instantiation: stext-search.c:fz_read_rbits Unexecuted instantiation: stext-table.c:fz_read_rbits Unexecuted instantiation: svg-device.c:fz_read_rbits Unexecuted instantiation: tree.c:fz_read_rbits Unexecuted instantiation: uncfb.c:fz_read_rbits Unexecuted instantiation: unlibarchive.c:fz_read_rbits Unexecuted instantiation: untar.c:fz_read_rbits Unexecuted instantiation: xml.c:fz_read_rbits Unexecuted instantiation: zip.c:fz_read_rbits Unexecuted instantiation: pdf-annot.c:fz_read_rbits Unexecuted instantiation: pdf-appearance.c:fz_read_rbits Unexecuted instantiation: pdf-clean.c:fz_read_rbits Unexecuted instantiation: pdf-colorspace.c:fz_read_rbits Unexecuted instantiation: pdf-crypt.c:fz_read_rbits Unexecuted instantiation: pdf-device.c:fz_read_rbits Unexecuted instantiation: pdf-event.c:fz_read_rbits Unexecuted instantiation: pdf-font-add.c:fz_read_rbits Unexecuted instantiation: pdf-font.c:fz_read_rbits Unexecuted instantiation: pdf-form.c:fz_read_rbits Unexecuted instantiation: pdf-function.c:fz_read_rbits Unexecuted instantiation: pdf-image.c:fz_read_rbits Unexecuted instantiation: pdf-interpret.c:fz_read_rbits Unexecuted instantiation: pdf-js.c:fz_read_rbits Unexecuted instantiation: pdf-label.c:fz_read_rbits Unexecuted instantiation: pdf-layer.c:fz_read_rbits Unexecuted instantiation: pdf-layout.c:fz_read_rbits Unexecuted instantiation: pdf-lex.c:fz_read_rbits Unexecuted instantiation: pdf-link.c:fz_read_rbits Unexecuted instantiation: pdf-metrics.c:fz_read_rbits Unexecuted instantiation: pdf-nametree.c:fz_read_rbits Unexecuted instantiation: pdf-object.c:fz_read_rbits Unexecuted instantiation: pdf-op-buffer.c:fz_read_rbits Unexecuted instantiation: pdf-op-filter.c:fz_read_rbits Unexecuted instantiation: pdf-op-run.c:fz_read_rbits Unexecuted instantiation: pdf-op-vectorize.c:fz_read_rbits Unexecuted instantiation: pdf-outline.c:fz_read_rbits Unexecuted instantiation: pdf-page.c:fz_read_rbits Unexecuted instantiation: pdf-parse.c:fz_read_rbits Unexecuted instantiation: pdf-pattern.c:fz_read_rbits Unexecuted instantiation: pdf-repair.c:fz_read_rbits Unexecuted instantiation: pdf-resources.c:fz_read_rbits Unexecuted instantiation: pdf-run.c:fz_read_rbits Unexecuted instantiation: pdf-shade.c:fz_read_rbits Unexecuted instantiation: pdf-signature.c:fz_read_rbits Unexecuted instantiation: pdf-store.c:fz_read_rbits Unexecuted instantiation: pdf-stream.c:fz_read_rbits Unexecuted instantiation: pdf-type3.c:fz_read_rbits Unexecuted instantiation: pdf-unicode.c:fz_read_rbits Unexecuted instantiation: pdf-xobject.c:fz_read_rbits Unexecuted instantiation: xps-common.c:fz_read_rbits Unexecuted instantiation: xps-glyphs.c:fz_read_rbits Unexecuted instantiation: xps-gradient.c:fz_read_rbits Unexecuted instantiation: xps-image.c:fz_read_rbits Unexecuted instantiation: xps-outline.c:fz_read_rbits Unexecuted instantiation: svg-color.c:fz_read_rbits Unexecuted instantiation: svg-parse.c:fz_read_rbits Unexecuted instantiation: css-apply.c:fz_read_rbits Unexecuted instantiation: css-parse.c:fz_read_rbits Unexecuted instantiation: bidi-std.c:fz_read_rbits Unexecuted instantiation: compress.c:fz_read_rbits Unexecuted instantiation: crypt-aes.c:fz_read_rbits Unexecuted instantiation: crypt-arc4.c:fz_read_rbits Unexecuted instantiation: crypt-sha2.c:fz_read_rbits Unexecuted instantiation: filter-leech.c:fz_read_rbits Unexecuted instantiation: glyphbox.c:fz_read_rbits Unexecuted instantiation: stext-boxer.c:fz_read_rbits Unexecuted instantiation: stext-iterator.c:fz_read_rbits Unexecuted instantiation: stext-raft.c:fz_read_rbits Unexecuted instantiation: text-decoder.c:fz_read_rbits Unexecuted instantiation: pdf-cmap-load.c:fz_read_rbits Unexecuted instantiation: pdf-cmap-parse.c:fz_read_rbits Unexecuted instantiation: pdf-cmap.c:fz_read_rbits |
615 | | |
616 | | /** |
617 | | Called after reading bits to tell the stream |
618 | | that we are about to return to reading bytewise. Resyncs |
619 | | the stream to whole byte boundaries. |
620 | | */ |
621 | | static inline void fz_sync_bits(fz_context *ctx FZ_UNUSED, fz_stream *stm) |
622 | 0 | { |
623 | 0 | stm->avail = 0; |
624 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_sync_bits(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_sync_bits Unexecuted instantiation: context.c:fz_sync_bits Unexecuted instantiation: document-all.c:fz_sync_bits Unexecuted instantiation: document.c:fz_sync_bits Unexecuted instantiation: draw-device.c:fz_sync_bits Unexecuted instantiation: draw-glyph.c:fz_sync_bits Unexecuted instantiation: draw-mesh.c:fz_sync_bits Unexecuted instantiation: draw-paint.c:fz_sync_bits Unexecuted instantiation: draw-path.c:fz_sync_bits Unexecuted instantiation: draw-rasterize.c:fz_sync_bits Unexecuted instantiation: draw-scale-simple.c:fz_sync_bits Unexecuted instantiation: error.c:fz_sync_bits Unexecuted instantiation: font.c:fz_sync_bits Unexecuted instantiation: geometry.c:fz_sync_bits Unexecuted instantiation: glyph.c:fz_sync_bits Unexecuted instantiation: gz-doc.c:fz_sync_bits Unexecuted instantiation: hash.c:fz_sync_bits Unexecuted instantiation: hyphen.c:fz_sync_bits Unexecuted instantiation: image.c:fz_sync_bits Unexecuted instantiation: link.c:fz_sync_bits Unexecuted instantiation: list-device.c:fz_sync_bits Unexecuted instantiation: load-bmp.c:fz_sync_bits Unexecuted instantiation: load-gif.c:fz_sync_bits Unexecuted instantiation: load-jbig2.c:fz_sync_bits Unexecuted instantiation: load-jpeg.c:fz_sync_bits Unexecuted instantiation: load-jpx.c:fz_sync_bits Unexecuted instantiation: load-jxr.c:fz_sync_bits Unexecuted instantiation: load-png.c:fz_sync_bits Unexecuted instantiation: load-pnm.c:fz_sync_bits Unexecuted instantiation: load-psd.c:fz_sync_bits Unexecuted instantiation: load-tiff.c:fz_sync_bits Unexecuted instantiation: memory.c:fz_sync_bits Unexecuted instantiation: noto.c:fz_sync_bits Unexecuted instantiation: options.c:fz_sync_bits Unexecuted instantiation: outline.c:fz_sync_bits Unexecuted instantiation: output.c:fz_sync_bits Unexecuted instantiation: path.c:fz_sync_bits Unexecuted instantiation: pixmap.c:fz_sync_bits Unexecuted instantiation: pool.c:fz_sync_bits Unexecuted instantiation: printf.c:fz_sync_bits Unexecuted instantiation: random.c:fz_sync_bits Unexecuted instantiation: separation.c:fz_sync_bits Unexecuted instantiation: shade.c:fz_sync_bits Unexecuted instantiation: store.c:fz_sync_bits Unexecuted instantiation: stream-open.c:fz_sync_bits Unexecuted instantiation: stream-read.c:fz_sync_bits Unexecuted instantiation: string.c:fz_sync_bits Unexecuted instantiation: strtof.c:fz_sync_bits Unexecuted instantiation: text.c:fz_sync_bits Unexecuted instantiation: ucdn.c:fz_sync_bits Unexecuted instantiation: unzip.c:fz_sync_bits Unexecuted instantiation: util.c:fz_sync_bits Unexecuted instantiation: writer.c:fz_sync_bits Unexecuted instantiation: pdf-write.c:fz_sync_bits Unexecuted instantiation: pdf-xref.c:fz_sync_bits Unexecuted instantiation: xps-doc.c:fz_sync_bits Unexecuted instantiation: xps-link.c:fz_sync_bits Unexecuted instantiation: xps-path.c:fz_sync_bits Unexecuted instantiation: xps-resource.c:fz_sync_bits Unexecuted instantiation: xps-tile.c:fz_sync_bits Unexecuted instantiation: xps-util.c:fz_sync_bits Unexecuted instantiation: xps-zip.c:fz_sync_bits Unexecuted instantiation: svg-doc.c:fz_sync_bits Unexecuted instantiation: svg-run.c:fz_sync_bits Unexecuted instantiation: epub-doc.c:fz_sync_bits Unexecuted instantiation: html-doc.c:fz_sync_bits Unexecuted instantiation: html-font.c:fz_sync_bits Unexecuted instantiation: html-layout.c:fz_sync_bits Unexecuted instantiation: html-outline.c:fz_sync_bits Unexecuted instantiation: html-parse.c:fz_sync_bits Unexecuted instantiation: mobi.c:fz_sync_bits Unexecuted instantiation: office.c:fz_sync_bits Unexecuted instantiation: txt.c:fz_sync_bits Unexecuted instantiation: mucbz.c:fz_sync_bits Unexecuted instantiation: muimg.c:fz_sync_bits Unexecuted instantiation: archive.c:fz_sync_bits Unexecuted instantiation: bbox-device.c:fz_sync_bits Unexecuted instantiation: bidi.c:fz_sync_bits Unexecuted instantiation: bitmap.c:fz_sync_bits Unexecuted instantiation: brotli.c:fz_sync_bits Unexecuted instantiation: buffer.c:fz_sync_bits Unexecuted instantiation: color-fast.c:fz_sync_bits Unexecuted instantiation: color-icc-create.c:fz_sync_bits Unexecuted instantiation: color-lcms.c:fz_sync_bits Unexecuted instantiation: compressed-buffer.c:fz_sync_bits Unexecuted instantiation: crypt-md5.c:fz_sync_bits Unexecuted instantiation: device.c:fz_sync_bits Unexecuted instantiation: directory.c:fz_sync_bits Unexecuted instantiation: draw-affine.c:fz_sync_bits Unexecuted instantiation: draw-blend.c:fz_sync_bits Unexecuted instantiation: draw-edge.c:fz_sync_bits Unexecuted instantiation: draw-edgebuffer.c:fz_sync_bits Unexecuted instantiation: draw-unpack.c:fz_sync_bits Unexecuted instantiation: encode-fax.c:fz_sync_bits Unexecuted instantiation: encodings.c:fz_sync_bits Unexecuted instantiation: filter-basic.c:fz_sync_bits Unexecuted instantiation: filter-brotli.c:fz_sync_bits Unexecuted instantiation: filter-dct.c:fz_sync_bits Unexecuted instantiation: filter-fax.c:fz_sync_bits Unexecuted instantiation: filter-flate.c:fz_sync_bits Unexecuted instantiation: filter-jbig2.c:fz_sync_bits Unexecuted instantiation: filter-lzw.c:fz_sync_bits Unexecuted instantiation: filter-predict.c:fz_sync_bits Unexecuted instantiation: filter-sgi.c:fz_sync_bits Unexecuted instantiation: filter-thunder.c:fz_sync_bits Unexecuted instantiation: ftoa.c:fz_sync_bits Unexecuted instantiation: halftone.c:fz_sync_bits Unexecuted instantiation: harfbuzz.c:fz_sync_bits Unexecuted instantiation: output-cbz.c:fz_sync_bits Unexecuted instantiation: output-csv.c:fz_sync_bits Unexecuted instantiation: output-docx.c:fz_sync_bits Unexecuted instantiation: output-jpeg.c:fz_sync_bits Unexecuted instantiation: output-pcl.c:fz_sync_bits Unexecuted instantiation: output-pclm.c:fz_sync_bits Unexecuted instantiation: output-pdfocr.c:fz_sync_bits Unexecuted instantiation: output-png.c:fz_sync_bits Unexecuted instantiation: output-pnm.c:fz_sync_bits Unexecuted instantiation: output-ps.c:fz_sync_bits Unexecuted instantiation: output-pwg.c:fz_sync_bits Unexecuted instantiation: output-svg.c:fz_sync_bits Unexecuted instantiation: stext-device.c:fz_sync_bits Unexecuted instantiation: stext-output.c:fz_sync_bits Unexecuted instantiation: stext-para.c:fz_sync_bits Unexecuted instantiation: stext-search.c:fz_sync_bits Unexecuted instantiation: stext-table.c:fz_sync_bits Unexecuted instantiation: svg-device.c:fz_sync_bits Unexecuted instantiation: tree.c:fz_sync_bits Unexecuted instantiation: uncfb.c:fz_sync_bits Unexecuted instantiation: unlibarchive.c:fz_sync_bits Unexecuted instantiation: untar.c:fz_sync_bits Unexecuted instantiation: xml.c:fz_sync_bits Unexecuted instantiation: zip.c:fz_sync_bits Unexecuted instantiation: pdf-annot.c:fz_sync_bits Unexecuted instantiation: pdf-appearance.c:fz_sync_bits Unexecuted instantiation: pdf-clean.c:fz_sync_bits Unexecuted instantiation: pdf-colorspace.c:fz_sync_bits Unexecuted instantiation: pdf-crypt.c:fz_sync_bits Unexecuted instantiation: pdf-device.c:fz_sync_bits Unexecuted instantiation: pdf-event.c:fz_sync_bits Unexecuted instantiation: pdf-font-add.c:fz_sync_bits Unexecuted instantiation: pdf-font.c:fz_sync_bits Unexecuted instantiation: pdf-form.c:fz_sync_bits Unexecuted instantiation: pdf-function.c:fz_sync_bits Unexecuted instantiation: pdf-image.c:fz_sync_bits Unexecuted instantiation: pdf-interpret.c:fz_sync_bits Unexecuted instantiation: pdf-js.c:fz_sync_bits Unexecuted instantiation: pdf-label.c:fz_sync_bits Unexecuted instantiation: pdf-layer.c:fz_sync_bits Unexecuted instantiation: pdf-layout.c:fz_sync_bits Unexecuted instantiation: pdf-lex.c:fz_sync_bits Unexecuted instantiation: pdf-link.c:fz_sync_bits Unexecuted instantiation: pdf-metrics.c:fz_sync_bits Unexecuted instantiation: pdf-nametree.c:fz_sync_bits Unexecuted instantiation: pdf-object.c:fz_sync_bits Unexecuted instantiation: pdf-op-buffer.c:fz_sync_bits Unexecuted instantiation: pdf-op-filter.c:fz_sync_bits Unexecuted instantiation: pdf-op-run.c:fz_sync_bits Unexecuted instantiation: pdf-op-vectorize.c:fz_sync_bits Unexecuted instantiation: pdf-outline.c:fz_sync_bits Unexecuted instantiation: pdf-page.c:fz_sync_bits Unexecuted instantiation: pdf-parse.c:fz_sync_bits Unexecuted instantiation: pdf-pattern.c:fz_sync_bits Unexecuted instantiation: pdf-repair.c:fz_sync_bits Unexecuted instantiation: pdf-resources.c:fz_sync_bits Unexecuted instantiation: pdf-run.c:fz_sync_bits Unexecuted instantiation: pdf-shade.c:fz_sync_bits Unexecuted instantiation: pdf-signature.c:fz_sync_bits Unexecuted instantiation: pdf-store.c:fz_sync_bits Unexecuted instantiation: pdf-stream.c:fz_sync_bits Unexecuted instantiation: pdf-type3.c:fz_sync_bits Unexecuted instantiation: pdf-unicode.c:fz_sync_bits Unexecuted instantiation: pdf-xobject.c:fz_sync_bits Unexecuted instantiation: xps-common.c:fz_sync_bits Unexecuted instantiation: xps-glyphs.c:fz_sync_bits Unexecuted instantiation: xps-gradient.c:fz_sync_bits Unexecuted instantiation: xps-image.c:fz_sync_bits Unexecuted instantiation: xps-outline.c:fz_sync_bits Unexecuted instantiation: svg-color.c:fz_sync_bits Unexecuted instantiation: svg-parse.c:fz_sync_bits Unexecuted instantiation: css-apply.c:fz_sync_bits Unexecuted instantiation: css-parse.c:fz_sync_bits Unexecuted instantiation: bidi-std.c:fz_sync_bits Unexecuted instantiation: compress.c:fz_sync_bits Unexecuted instantiation: crypt-aes.c:fz_sync_bits Unexecuted instantiation: crypt-arc4.c:fz_sync_bits Unexecuted instantiation: crypt-sha2.c:fz_sync_bits Unexecuted instantiation: filter-leech.c:fz_sync_bits Unexecuted instantiation: glyphbox.c:fz_sync_bits Unexecuted instantiation: stext-boxer.c:fz_sync_bits Unexecuted instantiation: stext-iterator.c:fz_sync_bits Unexecuted instantiation: stext-raft.c:fz_sync_bits Unexecuted instantiation: text-decoder.c:fz_sync_bits Unexecuted instantiation: pdf-cmap-load.c:fz_sync_bits Unexecuted instantiation: pdf-cmap-parse.c:fz_sync_bits Unexecuted instantiation: pdf-cmap.c:fz_sync_bits |
625 | | |
626 | | /** |
627 | | Query if the stream has reached EOF (during bitwise |
628 | | reading). |
629 | | |
630 | | See fz_is_eof for the equivalent function for bytewise |
631 | | reading. |
632 | | */ |
633 | | static inline int fz_is_eof_bits(fz_context *ctx, fz_stream *stm) |
634 | 0 | { |
635 | 0 | return fz_is_eof(ctx, stm) && (stm->avail == 0 || stm->bits == EOF); |
636 | 0 | } Unexecuted instantiation: pdf_fuzzer.cc:fz_is_eof_bits(fz_context*, fz_stream*) Unexecuted instantiation: colorspace.c:fz_is_eof_bits Unexecuted instantiation: context.c:fz_is_eof_bits Unexecuted instantiation: document-all.c:fz_is_eof_bits Unexecuted instantiation: document.c:fz_is_eof_bits Unexecuted instantiation: draw-device.c:fz_is_eof_bits Unexecuted instantiation: draw-glyph.c:fz_is_eof_bits Unexecuted instantiation: draw-mesh.c:fz_is_eof_bits Unexecuted instantiation: draw-paint.c:fz_is_eof_bits Unexecuted instantiation: draw-path.c:fz_is_eof_bits Unexecuted instantiation: draw-rasterize.c:fz_is_eof_bits Unexecuted instantiation: draw-scale-simple.c:fz_is_eof_bits Unexecuted instantiation: error.c:fz_is_eof_bits Unexecuted instantiation: font.c:fz_is_eof_bits Unexecuted instantiation: geometry.c:fz_is_eof_bits Unexecuted instantiation: glyph.c:fz_is_eof_bits Unexecuted instantiation: gz-doc.c:fz_is_eof_bits Unexecuted instantiation: hash.c:fz_is_eof_bits Unexecuted instantiation: hyphen.c:fz_is_eof_bits Unexecuted instantiation: image.c:fz_is_eof_bits Unexecuted instantiation: link.c:fz_is_eof_bits Unexecuted instantiation: list-device.c:fz_is_eof_bits Unexecuted instantiation: load-bmp.c:fz_is_eof_bits Unexecuted instantiation: load-gif.c:fz_is_eof_bits Unexecuted instantiation: load-jbig2.c:fz_is_eof_bits Unexecuted instantiation: load-jpeg.c:fz_is_eof_bits Unexecuted instantiation: load-jpx.c:fz_is_eof_bits Unexecuted instantiation: load-jxr.c:fz_is_eof_bits Unexecuted instantiation: load-png.c:fz_is_eof_bits Unexecuted instantiation: load-pnm.c:fz_is_eof_bits Unexecuted instantiation: load-psd.c:fz_is_eof_bits Unexecuted instantiation: load-tiff.c:fz_is_eof_bits Unexecuted instantiation: memory.c:fz_is_eof_bits Unexecuted instantiation: noto.c:fz_is_eof_bits Unexecuted instantiation: options.c:fz_is_eof_bits Unexecuted instantiation: outline.c:fz_is_eof_bits Unexecuted instantiation: output.c:fz_is_eof_bits Unexecuted instantiation: path.c:fz_is_eof_bits Unexecuted instantiation: pixmap.c:fz_is_eof_bits Unexecuted instantiation: pool.c:fz_is_eof_bits Unexecuted instantiation: printf.c:fz_is_eof_bits Unexecuted instantiation: random.c:fz_is_eof_bits Unexecuted instantiation: separation.c:fz_is_eof_bits Unexecuted instantiation: shade.c:fz_is_eof_bits Unexecuted instantiation: store.c:fz_is_eof_bits Unexecuted instantiation: stream-open.c:fz_is_eof_bits Unexecuted instantiation: stream-read.c:fz_is_eof_bits Unexecuted instantiation: string.c:fz_is_eof_bits Unexecuted instantiation: strtof.c:fz_is_eof_bits Unexecuted instantiation: text.c:fz_is_eof_bits Unexecuted instantiation: ucdn.c:fz_is_eof_bits Unexecuted instantiation: unzip.c:fz_is_eof_bits Unexecuted instantiation: util.c:fz_is_eof_bits Unexecuted instantiation: writer.c:fz_is_eof_bits Unexecuted instantiation: pdf-write.c:fz_is_eof_bits Unexecuted instantiation: pdf-xref.c:fz_is_eof_bits Unexecuted instantiation: xps-doc.c:fz_is_eof_bits Unexecuted instantiation: xps-link.c:fz_is_eof_bits Unexecuted instantiation: xps-path.c:fz_is_eof_bits Unexecuted instantiation: xps-resource.c:fz_is_eof_bits Unexecuted instantiation: xps-tile.c:fz_is_eof_bits Unexecuted instantiation: xps-util.c:fz_is_eof_bits Unexecuted instantiation: xps-zip.c:fz_is_eof_bits Unexecuted instantiation: svg-doc.c:fz_is_eof_bits Unexecuted instantiation: svg-run.c:fz_is_eof_bits Unexecuted instantiation: epub-doc.c:fz_is_eof_bits Unexecuted instantiation: html-doc.c:fz_is_eof_bits Unexecuted instantiation: html-font.c:fz_is_eof_bits Unexecuted instantiation: html-layout.c:fz_is_eof_bits Unexecuted instantiation: html-outline.c:fz_is_eof_bits Unexecuted instantiation: html-parse.c:fz_is_eof_bits Unexecuted instantiation: mobi.c:fz_is_eof_bits Unexecuted instantiation: office.c:fz_is_eof_bits Unexecuted instantiation: txt.c:fz_is_eof_bits Unexecuted instantiation: mucbz.c:fz_is_eof_bits Unexecuted instantiation: muimg.c:fz_is_eof_bits Unexecuted instantiation: archive.c:fz_is_eof_bits Unexecuted instantiation: bbox-device.c:fz_is_eof_bits Unexecuted instantiation: bidi.c:fz_is_eof_bits Unexecuted instantiation: bitmap.c:fz_is_eof_bits Unexecuted instantiation: brotli.c:fz_is_eof_bits Unexecuted instantiation: buffer.c:fz_is_eof_bits Unexecuted instantiation: color-fast.c:fz_is_eof_bits Unexecuted instantiation: color-icc-create.c:fz_is_eof_bits Unexecuted instantiation: color-lcms.c:fz_is_eof_bits Unexecuted instantiation: compressed-buffer.c:fz_is_eof_bits Unexecuted instantiation: crypt-md5.c:fz_is_eof_bits Unexecuted instantiation: device.c:fz_is_eof_bits Unexecuted instantiation: directory.c:fz_is_eof_bits Unexecuted instantiation: draw-affine.c:fz_is_eof_bits Unexecuted instantiation: draw-blend.c:fz_is_eof_bits Unexecuted instantiation: draw-edge.c:fz_is_eof_bits Unexecuted instantiation: draw-edgebuffer.c:fz_is_eof_bits Unexecuted instantiation: draw-unpack.c:fz_is_eof_bits Unexecuted instantiation: encode-fax.c:fz_is_eof_bits Unexecuted instantiation: encodings.c:fz_is_eof_bits Unexecuted instantiation: filter-basic.c:fz_is_eof_bits Unexecuted instantiation: filter-brotli.c:fz_is_eof_bits Unexecuted instantiation: filter-dct.c:fz_is_eof_bits Unexecuted instantiation: filter-fax.c:fz_is_eof_bits Unexecuted instantiation: filter-flate.c:fz_is_eof_bits Unexecuted instantiation: filter-jbig2.c:fz_is_eof_bits Unexecuted instantiation: filter-lzw.c:fz_is_eof_bits Unexecuted instantiation: filter-predict.c:fz_is_eof_bits Unexecuted instantiation: filter-sgi.c:fz_is_eof_bits Unexecuted instantiation: filter-thunder.c:fz_is_eof_bits Unexecuted instantiation: ftoa.c:fz_is_eof_bits Unexecuted instantiation: halftone.c:fz_is_eof_bits Unexecuted instantiation: harfbuzz.c:fz_is_eof_bits Unexecuted instantiation: output-cbz.c:fz_is_eof_bits Unexecuted instantiation: output-csv.c:fz_is_eof_bits Unexecuted instantiation: output-docx.c:fz_is_eof_bits Unexecuted instantiation: output-jpeg.c:fz_is_eof_bits Unexecuted instantiation: output-pcl.c:fz_is_eof_bits Unexecuted instantiation: output-pclm.c:fz_is_eof_bits Unexecuted instantiation: output-pdfocr.c:fz_is_eof_bits Unexecuted instantiation: output-png.c:fz_is_eof_bits Unexecuted instantiation: output-pnm.c:fz_is_eof_bits Unexecuted instantiation: output-ps.c:fz_is_eof_bits Unexecuted instantiation: output-pwg.c:fz_is_eof_bits Unexecuted instantiation: output-svg.c:fz_is_eof_bits Unexecuted instantiation: stext-device.c:fz_is_eof_bits Unexecuted instantiation: stext-output.c:fz_is_eof_bits Unexecuted instantiation: stext-para.c:fz_is_eof_bits Unexecuted instantiation: stext-search.c:fz_is_eof_bits Unexecuted instantiation: stext-table.c:fz_is_eof_bits Unexecuted instantiation: svg-device.c:fz_is_eof_bits Unexecuted instantiation: tree.c:fz_is_eof_bits Unexecuted instantiation: uncfb.c:fz_is_eof_bits Unexecuted instantiation: unlibarchive.c:fz_is_eof_bits Unexecuted instantiation: untar.c:fz_is_eof_bits Unexecuted instantiation: xml.c:fz_is_eof_bits Unexecuted instantiation: zip.c:fz_is_eof_bits Unexecuted instantiation: pdf-annot.c:fz_is_eof_bits Unexecuted instantiation: pdf-appearance.c:fz_is_eof_bits Unexecuted instantiation: pdf-clean.c:fz_is_eof_bits Unexecuted instantiation: pdf-colorspace.c:fz_is_eof_bits Unexecuted instantiation: pdf-crypt.c:fz_is_eof_bits Unexecuted instantiation: pdf-device.c:fz_is_eof_bits Unexecuted instantiation: pdf-event.c:fz_is_eof_bits Unexecuted instantiation: pdf-font-add.c:fz_is_eof_bits Unexecuted instantiation: pdf-font.c:fz_is_eof_bits Unexecuted instantiation: pdf-form.c:fz_is_eof_bits Unexecuted instantiation: pdf-function.c:fz_is_eof_bits Unexecuted instantiation: pdf-image.c:fz_is_eof_bits Unexecuted instantiation: pdf-interpret.c:fz_is_eof_bits Unexecuted instantiation: pdf-js.c:fz_is_eof_bits Unexecuted instantiation: pdf-label.c:fz_is_eof_bits Unexecuted instantiation: pdf-layer.c:fz_is_eof_bits Unexecuted instantiation: pdf-layout.c:fz_is_eof_bits Unexecuted instantiation: pdf-lex.c:fz_is_eof_bits Unexecuted instantiation: pdf-link.c:fz_is_eof_bits Unexecuted instantiation: pdf-metrics.c:fz_is_eof_bits Unexecuted instantiation: pdf-nametree.c:fz_is_eof_bits Unexecuted instantiation: pdf-object.c:fz_is_eof_bits Unexecuted instantiation: pdf-op-buffer.c:fz_is_eof_bits Unexecuted instantiation: pdf-op-filter.c:fz_is_eof_bits Unexecuted instantiation: pdf-op-run.c:fz_is_eof_bits Unexecuted instantiation: pdf-op-vectorize.c:fz_is_eof_bits Unexecuted instantiation: pdf-outline.c:fz_is_eof_bits Unexecuted instantiation: pdf-page.c:fz_is_eof_bits Unexecuted instantiation: pdf-parse.c:fz_is_eof_bits Unexecuted instantiation: pdf-pattern.c:fz_is_eof_bits Unexecuted instantiation: pdf-repair.c:fz_is_eof_bits Unexecuted instantiation: pdf-resources.c:fz_is_eof_bits Unexecuted instantiation: pdf-run.c:fz_is_eof_bits Unexecuted instantiation: pdf-shade.c:fz_is_eof_bits Unexecuted instantiation: pdf-signature.c:fz_is_eof_bits Unexecuted instantiation: pdf-store.c:fz_is_eof_bits Unexecuted instantiation: pdf-stream.c:fz_is_eof_bits Unexecuted instantiation: pdf-type3.c:fz_is_eof_bits Unexecuted instantiation: pdf-unicode.c:fz_is_eof_bits Unexecuted instantiation: pdf-xobject.c:fz_is_eof_bits Unexecuted instantiation: xps-common.c:fz_is_eof_bits Unexecuted instantiation: xps-glyphs.c:fz_is_eof_bits Unexecuted instantiation: xps-gradient.c:fz_is_eof_bits Unexecuted instantiation: xps-image.c:fz_is_eof_bits Unexecuted instantiation: xps-outline.c:fz_is_eof_bits Unexecuted instantiation: svg-color.c:fz_is_eof_bits Unexecuted instantiation: svg-parse.c:fz_is_eof_bits Unexecuted instantiation: css-apply.c:fz_is_eof_bits Unexecuted instantiation: css-parse.c:fz_is_eof_bits Unexecuted instantiation: bidi-std.c:fz_is_eof_bits Unexecuted instantiation: compress.c:fz_is_eof_bits Unexecuted instantiation: crypt-aes.c:fz_is_eof_bits Unexecuted instantiation: crypt-arc4.c:fz_is_eof_bits Unexecuted instantiation: crypt-sha2.c:fz_is_eof_bits Unexecuted instantiation: filter-leech.c:fz_is_eof_bits Unexecuted instantiation: glyphbox.c:fz_is_eof_bits Unexecuted instantiation: stext-boxer.c:fz_is_eof_bits Unexecuted instantiation: stext-iterator.c:fz_is_eof_bits Unexecuted instantiation: stext-raft.c:fz_is_eof_bits Unexecuted instantiation: text-decoder.c:fz_is_eof_bits Unexecuted instantiation: pdf-cmap-load.c:fz_is_eof_bits Unexecuted instantiation: pdf-cmap-parse.c:fz_is_eof_bits Unexecuted instantiation: pdf-cmap.c:fz_is_eof_bits |
637 | | |
638 | | /* Implementation details: subject to change. */ |
639 | | |
640 | | /** |
641 | | Create a stream from a FILE * that will not be closed |
642 | | when the stream is dropped. |
643 | | */ |
644 | | fz_stream *fz_open_file_ptr_no_close(fz_context *ctx, FILE *file); |
645 | | |
646 | | #endif |