Qt: fixed segfault at lazarus exit, FDesignControl is already destroyed by it's parent.

git-svn-id: trunk@24227 -
This commit is contained in:
zeljko 2010-03-26 18:45:14 +00:00
parent c659828095
commit 119586eafc

View File

@ -10774,13 +10774,8 @@ end;
procedure TQtDesignWidget.DestroyWidget;
begin
if FDesignControl <> nil then
begin
removeProperty(FDesignControl, 'lclwidget');
QObject_deleteLater(FDesignControl);
FDesignControl := nil;
end;
inherited DestroyWidget;
FDesignControl := nil;
end;
procedure TQtDesignWidget.SlotDesignControlPaint(Sender: QObjectH; Event: QEventH); cdecl;
@ -10880,6 +10875,13 @@ begin
QEvent_Accept(Event);
if LCLObject = nil then
exit;
if QEvent_type(Event) = QEventDestroy then
begin
{FDesignControl is always destroyed by it's parent,
only thing we need is to remove dynamic property.}
RemoveProperty(FDesignControl,'lclwidget');
exit;
end;
BeginEventProcessing;
case QEvent_type(Event) of
QEventMouseButtonPress,