Mercurial > hg > batmud > maputils
changeset 1507:4a62701d805e
Various fixes to the parser revamp, actually works now.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sat, 07 Feb 2015 06:24:09 +0200 |
parents | b91105ab4c1f |
children | 006b79fc386b |
files | liblocfile.c |
diffstat | 1 files changed, 6 insertions(+), 12 deletions(-) [+] |
line wrap: on
line diff
--- a/liblocfile.c Sat Feb 07 06:14:36 2015 +0200 +++ b/liblocfile.c Sat Feb 07 06:24:09 2015 +0200 @@ -416,7 +416,7 @@ char *tmpStr; int i; - if (f->ch == '\n' || f->ch == '\r') + if ((f->ch == '\n' || f->ch == '\r') && f->field < 8) { locPMErr(f, "Unexpected end of line.\n"); return; @@ -444,7 +444,7 @@ locPMSet(f, PM_NEXT, PM_FIELD_SEP); } else - locPMErr(f, "Error parsing X-coordinate.\n"); + locPMErr(f, "Error parsing Y-coordinate.\n"); break; case 3: /* Label orientation and flags */ @@ -457,6 +457,8 @@ f->field++; locPMSet(f, PM_NEXT, PM_FIELD_SEP); } + else + locPMErr(f, "Error parsing orientation and flags field.\n"); break; case 4: /* Location name(s) */ @@ -480,16 +482,9 @@ tmpStr, marker->names[0].name); } } - if (!strchr(f->fieldsep, f->ch)) - { - locPMErr(f, "Expected field separator '%s' after DATE.\n", f->fieldsep); - } - else - { - f->field++; - locPMSet(f, PM_NEXT, PM_FIELD_SEP); - } th_free(tmpStr); + f->field++; + locPMSet(f, PM_NEXT, PM_FIELD_SEP); break; case 7: /* URI */ @@ -497,7 +492,6 @@ marker->uri = parseFieldString(f, f->fieldsep); f->field++; locPMSet(f, PM_NEXT, PM_FIELD_SEP); - printf("XXX: marker->uri='%s'\n", marker->uri); break; case 8: /* Freeform */