Absolute File Name: | /home/opencoverage/opencoverage/guest-scripts/coreutils/src/gnulib/lib/linebuffer.c |
Switch to Source code | Preprocessed file |
Line | Source | Count | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | - | |||||||||||||
2 | - | |||||||||||||
3 | - | |||||||||||||
4 | - | |||||||||||||
5 | - | |||||||||||||
6 | - | |||||||||||||
7 | - | |||||||||||||
8 | void | - | ||||||||||||
9 | initbuffer (struct linebuffer *linebuffer) | - | ||||||||||||
10 | { | - | ||||||||||||
11 | memset (linebuffer, 0, sizeof *linebuffer); | - | ||||||||||||
12 | } executed 1403 times by 3 tests: end of block Executed by:
| 1403 | ||||||||||||
13 | - | |||||||||||||
14 | struct linebuffer * | - | ||||||||||||
15 | readlinebuffer (struct linebuffer *linebuffer, FILE *stream) | - | ||||||||||||
16 | { | - | ||||||||||||
17 | return executed 70 times by 1 test: readlinebuffer_delim (linebuffer, stream, '\n');return readlinebuffer_delim (linebuffer, stream, '\n'); Executed by:
executed 70 times by 1 test: return readlinebuffer_delim (linebuffer, stream, '\n'); Executed by:
| 70 | ||||||||||||
18 | } | - | ||||||||||||
19 | struct linebuffer * | - | ||||||||||||
20 | readlinebuffer_delim (struct linebuffer *linebuffer, FILE *stream, | - | ||||||||||||
21 | char delimiter) | - | ||||||||||||
22 | { | - | ||||||||||||
23 | int c; | - | ||||||||||||
24 | char *buffer = linebuffer->buffer; | - | ||||||||||||
25 | char *p = linebuffer->buffer; | - | ||||||||||||
26 | char *end = buffer + linebuffer->size; | - | ||||||||||||
27 | - | |||||||||||||
28 | if (feof_unlocked (stream)
| 72-3211 | ||||||||||||
29 | return executed 72 times by 2 tests: return ((void *)0) ; Executed by:
executed 72 times by 2 tests: return ((void *)0) ; Executed by:
| 72 | ||||||||||||
30 | ((void *)0) executed 72 times by 2 tests: return ((void *)0) ; Executed by:
| 72 | ||||||||||||
31 | ; executed 72 times by 2 tests: return ((void *)0) ; Executed by:
| 72 | ||||||||||||
32 | - | |||||||||||||
33 | do | - | ||||||||||||
34 | { | - | ||||||||||||
35 | c = getc_unlocked (stream); | - | ||||||||||||
36 | if (c ==
| 775-128233 | ||||||||||||
37 | (-1)
| 775-128233 | ||||||||||||
38 | ) | - | ||||||||||||
39 | { | - | ||||||||||||
40 | if (p == buffer
| 0-644 | ||||||||||||
41 | return executed 644 times by 4 tests: return ((void *)0) ; Executed by:
executed 644 times by 4 tests: return ((void *)0) ; Executed by:
| 644 | ||||||||||||
42 | ((void *)0) executed 644 times by 4 tests: return ((void *)0) ; Executed by:
| 644 | ||||||||||||
43 | ; executed 644 times by 4 tests: return ((void *)0) ; Executed by:
| 644 | ||||||||||||
44 | if (p[-1] == delimiter
| 0-131 | ||||||||||||
45 | break; never executed: break; | 0 | ||||||||||||
46 | c = delimiter; | - | ||||||||||||
47 | } executed 131 times by 3 tests: end of block Executed by:
| 131 | ||||||||||||
48 | if (p == end
| 1693-126671 | ||||||||||||
49 | { | - | ||||||||||||
50 | size_t oldsize = linebuffer->size; | - | ||||||||||||
51 | buffer = x2realloc (buffer, &linebuffer->size); | - | ||||||||||||
52 | p = buffer + oldsize; | - | ||||||||||||
53 | linebuffer->buffer = buffer; | - | ||||||||||||
54 | end = buffer + linebuffer->size; | - | ||||||||||||
55 | } executed 1693 times by 4 tests: end of block Executed by:
| 1693 | ||||||||||||
56 | *p++ = c; | - | ||||||||||||
57 | } executed 128364 times by 4 tests: end of block Executed by:
| 128364 | ||||||||||||
58 | while (c != delimiter
| 2567-125797 | ||||||||||||
59 | - | |||||||||||||
60 | linebuffer->length = p - buffer; | - | ||||||||||||
61 | return executed 2567 times by 4 tests: linebuffer;return linebuffer; Executed by:
executed 2567 times by 4 tests: return linebuffer; Executed by:
| 2567 | ||||||||||||
62 | } | - | ||||||||||||
63 | - | |||||||||||||
64 | - | |||||||||||||
65 | - | |||||||||||||
66 | void | - | ||||||||||||
67 | freebuffer (struct linebuffer *linebuffer) | - | ||||||||||||
68 | { | - | ||||||||||||
69 | free (linebuffer->buffer); | - | ||||||||||||
70 | } never executed: end of block | 0 | ||||||||||||
Switch to Source code | Preprocessed file |