Reset the d->failureText to 0 at that point, as the qDeleteAll below
will first delete the d->failureText object and than trigger a relayout which will access the invalid d->failureText in Applet::contentSize(). => No crash anymore svn path=/trunk/KDE/kdebase/workspace/libs/plasma/; revision=749708
This commit is contained in:
parent
5510140da1
commit
92e6a35a80
@ -672,6 +672,8 @@ void Applet::setFailedToLaunch(bool failed, const QString& reason)
|
|||||||
|
|
||||||
d->failed = failed;
|
d->failed = failed;
|
||||||
prepareGeometryChange();
|
prepareGeometryChange();
|
||||||
|
|
||||||
|
d->failureText = 0;
|
||||||
qDeleteAll(QGraphicsItem::children());
|
qDeleteAll(QGraphicsItem::children());
|
||||||
delete layout();
|
delete layout();
|
||||||
|
|
||||||
@ -690,8 +692,6 @@ void Applet::setFailedToLaunch(bool failed, const QString& reason)
|
|||||||
.brush(QPalette::Normal).color());
|
.brush(QPalette::Normal).color());
|
||||||
failureLayout->addItem(d->failureText);
|
failureLayout->addItem(d->failureText);
|
||||||
setGeometry(QRectF(geometry().topLeft(), d->failureText->sizeHint()));
|
setGeometry(QRectF(geometry().topLeft(), d->failureText->sizeHint()));
|
||||||
} else {
|
|
||||||
d->failureText = 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
update();
|
update();
|
||||||
|
Loading…
Reference in New Issue
Block a user