diff options
author | Gareth Stockwell <gareth.stockwell@sosco.com> | 2009-10-14 12:18:18 (GMT) |
---|---|---|
committer | Gareth Stockwell <gareth.stockwell@sosco.com> | 2009-10-15 08:50:58 (GMT) |
commit | 6c694eaae2b40be57c3292f43e085893095d9722 (patch) | |
tree | d40dd51a95a181d139af161c348f14d07201bf8b /src/gui/kernel/qwidget.cpp | |
parent | b7142463c738cc1a0540fe456002fe94e7f5a894 (diff) | |
download | Qt-6c694eaae2b40be57c3292f43e085893095d9722.zip Qt-6c694eaae2b40be57c3292f43e085893095d9722.tar.gz Qt-6c694eaae2b40be57c3292f43e085893095d9722.tar.bz2 |
When reparenting native widget, delayed deletion of Symbian control
until control returns to the event loop.
This is necessary because reparenting can be triggered from the context
of a control's event handler. If reparenting causes that control to be
deleted, a crash can result.
Task-number: QTBUG-4664
Reviewed-by: axis
Diffstat (limited to 'src/gui/kernel/qwidget.cpp')
-rw-r--r-- | src/gui/kernel/qwidget.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index 7c11c00..7c9356e 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -11994,3 +11994,10 @@ void QWidget::clearMask() XRender extension is not supported on the X11 display, or if the handle could not be created. */ + +#ifdef Q_OS_SYMBIAN +void QWidgetPrivate::_q_delayedDestroy(WId winId) +{ + delete winId; +} +#endif |