diff options
Diffstat (limited to 'src/opengl/qgl.cpp')
-rw-r--r-- | src/opengl/qgl.cpp | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/src/opengl/qgl.cpp b/src/opengl/qgl.cpp index d3c0bf1..57ef70c 100644 --- a/src/opengl/qgl.cpp +++ b/src/opengl/qgl.cpp @@ -1494,7 +1494,7 @@ void QGLTextureCache::pixmapCleanupHook(QPixmap* pixmap) instance()->remove(cacheKey); } #if defined(Q_WS_X11) - QPixmapData *pd = pixmap->data_ptr(); + QPixmapData *pd = pixmap->data_ptr().data(); // Only need to delete the gl surface if the pixmap is about to be deleted if (pd->ref == 0) QGLContextPrivate::destroyGlSurfaceForPixmap(pd); @@ -1598,8 +1598,8 @@ Q_OPENGL_EXPORT QGLShareRegister* qgl_share_reg() */ QGLContext::QGLContext(const QGLFormat &format, QPaintDevice *device) + : d_ptr(new QGLContextPrivate(this)) { - d_ptr = new QGLContextPrivate(this); Q_D(QGLContext); d->init(device, format); } @@ -1621,8 +1621,8 @@ QGLContext::QGLContext(const QGLFormat &format, QPaintDevice *device) \sa format(), isValid() */ QGLContext::QGLContext(const QGLFormat &format) + : d_ptr(new QGLContextPrivate(this)) { - d_ptr = new QGLContextPrivate(this); Q_D(QGLContext); d->init(0, format); } @@ -1640,7 +1640,6 @@ QGLContext::~QGLContext() QGLSignalProxy::instance()->emitAboutToDestroyContext(this); reset(); - delete d; } void QGLContextPrivate::cleanup() |