From 22e3b06fddc007e6e7cd089f14e04cc43996041b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Du=C5=A1an=20Poizl?= Date: Wed, 28 Dec 2022 11:33:26 +0100 Subject: [PATCH] Fix potentional race conditions --- imagescrollareagl.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/imagescrollareagl.cpp b/imagescrollareagl.cpp index b054cac..0024d71 100644 --- a/imagescrollareagl.cpp +++ b/imagescrollareagl.cpp @@ -97,13 +97,15 @@ ImageWidget::~ImageWidget() void ImageWidget::setImage(std::shared_ptr image, int index) { if(image == nullptr)return; - + makeCurrent(); m_rawImage = image; m_imgWidth = image->width(); m_imgHeight = image->height(); m_currentImg = index; + if(!m_image)return; + const RawImageType &rawImageType = rawImageTypes[image->type()]; m_srgb = rawImageType.textureFormat == QOpenGLTexture::SRGB8 || rawImageType.textureFormat == QOpenGLTexture::SRGB8_Alpha8; m_bwImg = rawImageType.bw; @@ -489,6 +491,9 @@ void ImageWidget::initializeGL() m_transferOptions = std::unique_ptr(new QOpenGLPixelTransferOptions); m_transferOptions->setAlignment(1); + + if(m_rawImage) + setImage(m_rawImage, m_currentImg); } void ImageWidget::dragEnterEvent(QDragEnterEvent *event)