diff --git a/lib/asn1/der_get.c b/lib/asn1/der_get.c index 1f9b5d72d..00efa76c1 100644 --- a/lib/asn1/der_get.c +++ b/lib/asn1/der_get.c @@ -145,10 +145,9 @@ der_get_general_string (const unsigned char *p, size_t len, * an strings in the NEED_PREAUTH case that includes a * trailing NUL. */ - len = p1 - p; - while (*p1 == '\0' && p1 - p < len) + while (p1 - p < len && *p1 == '\0') p1++; - if (p1 - p != len + 1) + if (p1 - p != len) return ASN1_BAD_CHARACTER; } if (len > len + 1)