MCPcopy Create free account
hub / github.com/NetHack/NetHack / init_rumors

Function init_rumors

src/rumors.c:84–107  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

82DISABLE_WARNING_FORMAT_NONLITERAL
83
84staticfn void
85init_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, &gt.true_rumor_size,
95 &gt.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
109RESTORE_WARNING_FORMAT_NONLITERAL
110

Callers 2

getrumorFunction · 0.85
rumor_checkFunction · 0.85

Calls 2

dlb_fgetsFunction · 0.85
dlb_fcloseFunction · 0.85

Tested by

no test coverage detected