int state;
char buf[BUFSIZ], name[NAMESZ];
FILE *fp;
+ m_getfld_state_t gstate = 0;
if (!(fp = lkfopen (mapfile, "r")))
return NOTOK;
- for (state = FLD;;) {
+ for (;;) {
int result;
char *cp, *dp;
int bufsz = sizeof buf;
- switch (state = m_getfld (state, name, buf, &bufsz, fp)) {
+ switch (state = m_getfld (&gstate, name, buf, &bufsz, fp)) {
case FLD:
case FLDPLUS:
strncpy (mapname, name, namelen);
cp = add (buf, NULL);
while (state == FLDPLUS) {
bufsz = sizeof buf;
- state = m_getfld (state, name, buf, &bufsz, fp);
+ state = m_getfld (&gstate, name, buf, &bufsz, fp);
cp = add (buf, cp);
}
}
}
break;
}
+ m_getfld_state_destroy (&gstate);
lkfclose (fp, mapfile);
return NOTOK;