Ignore:
Timestamp:
Oct 27, 2010, 6:11:22 PM (15 years ago)
Author:
Dmitry A. Kuminov
Message:

gui: Fixed a crash that could happen at program termination in Dive mode if a top-level window had a native HWND window embedded in it. This was partly a r775 regression and also supersedes this change at all. Closes #184.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/gui/kernel/qwidget_pm.cpp

    r807 r808  
    13901390        if (destroyWindow && !(windowType() == Qt::Desktop) &&
    13911391            d->frameWinId() != NULLHANDLE) {
    1392             // make sure the backing store is deleted before destroying HWND --
    1393             // QPMDiveWindowSurface depends on that
    1394             delete d->topData()->backingStore;
    1395             d->topData()->backingStore = 0;
    1396             // now destroy HWND
     1392            // destroy HWND
    13971393            HWND id = d->frameWinId();
    13981394#if defined(QT_DEBUGWINCREATEDESTROY)
     
    14701466
    14711467    if (old_fid != NULLHANDLE && q->windowType() != Qt::Desktop) {
    1472         // make sure the backing store is deleted before destroying HWND --
    1473         // QPMDiveWindowSurface depends on that
    1474         if (extra && extra->topextra) {
    1475             delete extra->topextra->backingStore;
    1476             extra->topextra->backingStore = 0;
    1477             // zero the to-be-destroyed frame HWND just in case
    1478             extra->topextra->fId = NULLHANDLE;
    1479         }
    1480         // now destroy HWND
     1468        // destroy HWND
    14811469        qt_WinDestroyWindow(old_fid);
    14821470    }
Note: See TracChangeset for help on using the changeset viewer.