diff --git a/lib/asn1/gen_encode.c b/lib/asn1/gen_encode.c index 6128d9be1..f3472d0e5 100644 --- a/lib/asn1/gen_encode.c +++ b/lib/asn1/gen_encode.c @@ -411,11 +411,11 @@ encode_type (const char *name, const Type *t) if (have_ellipsis) { fprintf(codefile, "case %s: {\n" - "if (len < %s->u.%s.length)\n" + "if (len < (%s)->u.%s.length)\n" "return ASN1_OVERFLOW;\n" - "p -= %s->u.%s.length;\n" - "ret += %s->u.%s.length;\n" - "memcpy(p + 1, %s->u.%s.data, %s->u.%s.length);\n" + "p -= (%s)->u.%s.length;\n" + "ret += (%s)->u.%s.length;\n" + "memcpy(p + 1, (%s)->u.%s.data, (%s)->u.%s.length);\n" "break;\n" "}\n", have_ellipsis->label, diff --git a/lib/asn1/gen_length.c b/lib/asn1/gen_length.c index ee8340b53..9ab1580c9 100644 --- a/lib/asn1/gen_length.c +++ b/lib/asn1/gen_length.c @@ -171,7 +171,7 @@ length_type (const char *name, const Type *t, const char *variable) if (have_ellipsis) fprintf(codefile, "case %s:\n" - "ret += %s->u.%s.length;\n" + "ret += (%s)->u.%s.length;\n" "break;\n", have_ellipsis->label, name,