diff options
-rw-r--r-- | changes/annotations_fix | 4 | ||||
-rw-r--r-- | src/or/routerparse.c | 3 |
2 files changed, 6 insertions, 1 deletions
diff --git a/changes/annotations_fix b/changes/annotations_fix index d3cd7f343e..b259a306d2 100644 --- a/changes/annotations_fix +++ b/changes/annotations_fix @@ -4,5 +4,7 @@ Previously we would ignore such annotations at first, but cache them to disk anyway. Bugfix on 0.2.0.8-alpha. Found by piebeer. - + o Minor bugfixes + - Enforce multiplicity rules when parsing annotations. Bugfix on + 0.2.0.8-alpha. Found by piebeer. diff --git a/src/or/routerparse.c b/src/or/routerparse.c index da08e46644..3d8ca14317 100644 --- a/src/or/routerparse.c +++ b/src/or/routerparse.c @@ -3181,6 +3181,9 @@ tokenize_string(memarea_t *area, end = start+strlen(start); for (i = 0; i < _NIL; ++i) counts[i] = 0; + + SMARTLIST_FOREACH(out, const directory_token_t *, t, ++counts[t->tp]); + while (*s < end && (!tok || tok->tp != _EOF)) { tok = get_next_token(area, s, end, table); if (tok->tp == _ERR) { |