Merge pull request #30023 from Faless/crash/vector_resize

Fix PoolVector resize and subarray.
This commit is contained in:
Rémi Verschelde 2019-06-24 22:07:54 +02:00 committed by GitHub
commit d4c9ae4c24
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 4 additions and 2 deletions

View File

@ -411,8 +411,8 @@ public:
p_to = size() + p_to;
}
CRASH_BAD_INDEX(p_from, size());
CRASH_BAD_INDEX(p_to, size());
ERR_FAIL_INDEX_V(p_from, size(), PoolVector<T>());
ERR_FAIL_INDEX_V(p_to, size(), PoolVector<T>());
PoolVector<T> slice;
int span = 1 + p_to - p_from;
@ -511,6 +511,8 @@ const T PoolVector<T>::operator[](int p_index) const {
template <class T>
Error PoolVector<T>::resize(int p_size) {
ERR_FAIL_COND_V(p_size < 0, ERR_INVALID_PARAMETER);
if (alloc == NULL) {
if (p_size == 0)