diff --git a/libasn1fix/asn1fix_bitstring.c b/libasn1fix/asn1fix_bitstring.c index 5f30ea4f9cf7eeee2fd77771b7759ba70830b214..8cf6b95eb96a726d9f073080a5ce19b321883616 100644 --- a/libasn1fix/asn1fix_bitstring.c +++ b/libasn1fix/asn1fix_bitstring.c @@ -229,14 +229,14 @@ asn1f_BS_unparsed_convert(arg_t *arg, asn1p_value_t *value, asn1p_expr_t *ttype) arg->expr->Identifier, arg->expr->_lineno ); - asn1p_free(asn); + asn1p_delete(asn); return -1; } bits = aI + 1; /* Number of bits is more than a last bit position */ bitbuf = calloc(1, 1 + ((bits + 7) / 8)); if(bitbuf == NULL) { - asn1p_free(asn); + asn1p_delete(asn); return -1; } @@ -281,7 +281,7 @@ asn1f_BS_unparsed_convert(arg_t *arg, asn1p_value_t *value, asn1p_expr_t *ttype) bitbuf[set_bit_pos>>3] |= 1 << (7-(set_bit_pos % 8)); } - asn1p_free(asn); + asn1p_delete(asn); free(value->value.string.buf); value->type = ATV_BITVECTOR; value->value.binary_vector.bits = bitbuf;