Adjust the zero check in `RawVec::grow`.
This was supposed to land as part of #72227. (I wish `git push` would abort when you have uncommited changes.)
This commit is contained in:
parent
3a7dfda40a
commit
9eb0399a9d
|
@ -401,16 +401,15 @@ impl<T, A: AllocRef> RawVec<T, A> {
|
|||
needed_extra_capacity: usize,
|
||||
placement: ReallocPlacement,
|
||||
) -> Result<(), TryReserveError> {
|
||||
// This is ensured by the calling contexts.
|
||||
debug_assert!(needed_extra_capacity > 0);
|
||||
|
||||
if mem::size_of::<T>() == 0 {
|
||||
// Since we return a capacity of `usize::MAX` when `elem_size` is
|
||||
// 0, getting to here necessarily means the `RawVec` is overfull.
|
||||
return Err(CapacityOverflow);
|
||||
}
|
||||
|
||||
if needed_extra_capacity == 0 {
|
||||
return Ok(());
|
||||
}
|
||||
|
||||
// Nothing we can really do about these checks, sadly.
|
||||
let required_cap =
|
||||
used_capacity.checked_add(needed_extra_capacity).ok_or(CapacityOverflow)?;
|
||||
|
|
Loading…
Reference in New Issue