From 13fcd02ff906a00593fabffe3620348da8e42755 Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Wed, 4 Nov 2020 11:09:49 +0100 Subject: [PATCH] Avoid crashes when calling squeeze() Avoid crashes when calling squeeze() on a QList with non zero capacity but zero size. Change-Id: Id470b2d52266a345b94bc3dc5483f4668fbb57dc Reviewed-by: Andrei Golubev Reviewed-by: Thiago Macieira --- src/corelib/tools/qarraydatapointer.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/corelib/tools/qarraydatapointer.h b/src/corelib/tools/qarraydatapointer.h index f6e556597f..27b5b1ae74 100644 --- a/src/corelib/tools/qarraydatapointer.h +++ b/src/corelib/tools/qarraydatapointer.h @@ -187,7 +187,7 @@ public: qsizetype detachCapacity(qsizetype newSize) const noexcept { return d ? d->detachCapacity(newSize) : newSize; } const typename Data::ArrayOptions flags() const noexcept { return d ? typename Data::ArrayOption(d->flags) : Data::ArrayOptionDefault; } void setFlag(typename Data::ArrayOptions f) noexcept { Q_ASSERT(d); d->flags |= f; } - void clearFlag(typename Data::ArrayOptions f) noexcept { Q_ASSERT(d); d->flags &= ~f; } + void clearFlag(typename Data::ArrayOptions f) noexcept { if (d) d->flags &= ~f; } Data *d_ptr() noexcept { return d; } void setBegin(T *begin) noexcept { ptr = begin; }