| 82 | DISABLE_WARNING_FORMAT_NONLITERAL |
| 83 | |
| 84 | staticfn void |
| 85 | init_rumors(dlb *fp) |
| 86 | { |
| 87 | static const char rumors_header[] = "%d,%ld,%lx;%d,%ld,%lx;0,0,%lx\n"; |
| 88 | int true_count, false_count; /* in file but not used here */ |
| 89 | unsigned long eof_offset; |
| 90 | char line[BUFSZ]; |
| 91 | |
| 92 | (void) dlb_fgets(line, sizeof line, fp); /* skip "don't edit" comment */ |
| 93 | (void) dlb_fgets(line, sizeof line, fp); |
| 94 | if (sscanf(line, rumors_header, &true_count, >.true_rumor_size, |
| 95 | >.true_rumor_start, &false_count, &gf.false_rumor_size, |
| 96 | &gf.false_rumor_start, &eof_offset) == 7 |
| 97 | && gt.true_rumor_size > 0L |
| 98 | && gf.false_rumor_size > 0L) { |
| 99 | gt.true_rumor_end = (long) gt.true_rumor_start + gt.true_rumor_size; |
| 100 | /* assert( gt.true_rumor_end == false_rumor_start ); */ |
| 101 | gf.false_rumor_end = (long) gf.false_rumor_start + gf.false_rumor_size; |
| 102 | /* assert( gf.false_rumor_end == eof_offset ); */ |
| 103 | } else { |
| 104 | gt.true_rumor_size = -1L; /* init failed */ |
| 105 | (void) dlb_fclose(fp); |
| 106 | } |
| 107 | } |
| 108 | |
| 109 | RESTORE_WARNING_FORMAT_NONLITERAL |
| 110 |
no test coverage detected