~GraphicsSurfacePrivate() { if (m_frontBufferTexture) glDeleteTextures(1, &m_frontBufferTexture); if (m_frontBufferReadTexture) glDeleteTextures(1, &m_frontBufferReadTexture); if (m_backBufferTexture) glDeleteTextures(1, &m_backBufferTexture); if (m_backBufferReadTexture) glDeleteTextures(1, &m_backBufferReadTexture); if (m_frontBuffer) CFRelease(IOSurfaceRef(m_frontBuffer)); if (m_backBuffer) CFRelease(IOSurfaceRef(m_backBuffer)); if (m_readFbo) glDeleteFramebuffers(1, &m_readFbo); if (m_drawFbo) glDeleteFramebuffers(1, &m_drawFbo); if (m_context) CGLReleaseContext(m_context); if (m_token.frontBufferHandle) mach_port_deallocate(mach_task_self(), m_token.frontBufferHandle); if (m_token.backBufferHandle) mach_port_deallocate(mach_task_self(), m_token.backBufferHandle); }
void GraphicsSurface::platformDestroy() { if (m_fbo) glDeleteFramebuffers(1, &m_fbo); if (m_texture) glDeleteTextures(1, &m_texture); CFRelease(IOSurfaceRef(m_platformSurface)); }