Update length if copying MSB set in asn1_string_canon().
[openssl.git] / crypto / asn1 / x_name.c
index 9b0cf15d4ae32ad9a8eec108051bdc09fd7df061..07137ee91e2e4ddb7f577cf1175fcadcd98ed3a1 100644 (file)
@@ -428,7 +428,10 @@ static int asn1_string_canon(ASN1_STRING *out, ASN1_STRING *in)
                {
                /* If MSB set just copy across */
                if (*from & 0x80)
                {
                /* If MSB set just copy across */
                if (*from & 0x80)
+                       {
                        *to++ = *from++;
                        *to++ = *from++;
+                       i++;
+                       }
                /* Collapse multiple spaces */
                else if (isspace(*from))
                        {
                /* Collapse multiple spaces */
                else if (isspace(*from))
                        {