diff options
author | paul <paul@FreeBSD.org> | 1995-01-25 07:10:53 +0000 |
---|---|---|
committer | paul <paul@FreeBSD.org> | 1995-01-25 07:10:53 +0000 |
commit | 7f29893b63f72c6b71872d26b05d980b90c7acb1 (patch) | |
tree | 054044a807aa7f0af5800876969bf61c5c250d36 /usr.bin/fib | |
parent | 98c3cd0728c0f55ff2e86b18897e195c36d10537 (diff) | |
download | FreeBSD-src-7f29893b63f72c6b71872d26b05d980b90c7acb1.zip FreeBSD-src-7f29893b63f72c6b71872d26b05d980b90c7acb1.tar.gz |
Quash another bug where if no link alias is specified a
duplicate declaration was emitted.
Diffstat (limited to 'usr.bin/fib')
-rw-r--r-- | usr.bin/fib/parser.y | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/usr.bin/fib/parser.y b/usr.bin/fib/parser.y index b15ba88..2b3615f 100644 --- a/usr.bin/fib/parser.y +++ b/usr.bin/fib/parser.y @@ -600,15 +600,6 @@ parse_form(struct form_list *form, FILE *outf) } } - if (!links) { - /* No links for this field */ - fields->field.up = -1; - fields->field.down = -1; - fields->field.left = -1; - fields->field.right = -1; - fields->field.next = -1; - } - for (def = field_list; def; def=def->next) if (!strcmp(fieldname, def->fieldname)) break; @@ -620,7 +611,17 @@ parse_form(struct form_list *form, FILE *outf) fields->field.type = def->field.type; fields->field.width = def->field.width; fields->field.attr = def->field.attr; + } + if (!links) { + /* No links for this field */ + fields->field.up = -1; + fields->field.down = -1; + fields->field.left = -1; + fields->field.right = -1; + fields->field.next = -1; + fields->defname = fieldname; + } else { output_field(def, fields->fieldname, outf); if ((fields->field.type == F_TEXT) |