QDirectFBPaintDevice::~QDirectFBPaintDevice() { if (QDirectFBScreen::instance()) { unlockSurface(); #ifdef QT_DIRECTFB_SUBSURFACE releaseSubSurface(); #endif if (dfbSurface) { screen->releaseDFBSurface(dfbSurface); } } delete engine; }
void QDirectFBWindowSurface::releaseSurface() { if (dfbSurface) { #ifdef QT_DIRECTFB_SUBSURFACE releaseSubSurface(); #else unlockSurface(); #endif #ifdef QT_NO_DIRECTFB_WM Q_ASSERT(screen->primarySurface()); if (dfbSurface != screen->primarySurface()) #endif dfbSurface->Release(dfbSurface); dfbSurface = 0; } }