mirror of
https://github.com/openssl/openssl.git
synced 2024-12-15 06:01:37 +08:00
QUIC UINT_SET: Fix regression after list refactor
Reviewed-by: Tomas Mraz <tomas@openssl.org> Reviewed-by: Matt Caswell <matt@openssl.org> (Merged from https://github.com/openssl/openssl/pull/21565)
This commit is contained in:
parent
ec2b45f59b
commit
dc5e5c51e2
@ -277,7 +277,7 @@ int ossl_uint_set_remove(UINT_SET *s, const UINT_RANGE *range)
|
||||
*/
|
||||
ossl_list_uint_set_remove(s, z);
|
||||
OPENSSL_free(z);
|
||||
} else if (start <= z->range.start) {
|
||||
} else if (start <= z->range.start && end >= z->range.start) {
|
||||
/*
|
||||
* The range being removed includes start of this range, but does
|
||||
* not cover the entire range (as this would be caught by the case
|
||||
@ -303,6 +303,7 @@ int ossl_uint_set_remove(UINT_SET *s, const UINT_RANGE *range)
|
||||
*/
|
||||
y = create_set_item(end + 1, z->range.end);
|
||||
ossl_list_uint_set_insert_after(s, z, y);
|
||||
z->range.end = start - 1;
|
||||
break;
|
||||
} else {
|
||||
/* Assert no partial overlap; all cases should be covered above. */
|
||||
@ -310,7 +311,7 @@ int ossl_uint_set_remove(UINT_SET *s, const UINT_RANGE *range)
|
||||
}
|
||||
}
|
||||
|
||||
return 1;
|
||||
return 1;
|
||||
}
|
||||
|
||||
int ossl_uint_set_query(const UINT_SET *s, uint64_t v)
|
||||
|
Loading…
Reference in New Issue
Block a user