From 2d1bb6d61d5c26a11b65eda5f9625894b794391f Mon Sep 17 00:00:00 2001 From: Giuseppe D'Angelo Date: Fri, 8 Nov 2013 13:03:22 +0100 Subject: Prevent a crash in QLayout::replaceWidget MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Item might be null. Change-Id: Ia432a35cb1a6bb02ee056ff8ad44a9f35bdbc146 Reviewed-by: Thorbjørn Lund Martsum Reviewed-by: Marc Mutz --- src/widgets/kernel/qlayout.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/widgets/kernel/qlayout.cpp b/src/widgets/kernel/qlayout.cpp index cd2891d829..f17a6caa3c 100644 --- a/src/widgets/kernel/qlayout.cpp +++ b/src/widgets/kernel/qlayout.cpp @@ -1133,11 +1133,15 @@ QLayoutItem* QLayout::replaceWidget(QWidget *from, QWidget *to, bool recursive) QLayoutItem *item = 0; for (int u = 0; u < count(); ++u) { item = itemAt(u); + if (!item) + continue; + if (item->widget() == from) { index = u; break; } - if (item && item->layout() && recursive) { + + if (item->layout() && recursive) { QLayoutItem *r = item->layout()->replaceWidget(from, to, true); if (r) return r; -- cgit v1.2.3