summaryrefslogtreecommitdiffstats
path: root/src/datavisualization/engine
diff options
context:
space:
mode:
authorMiikka Heikkinen <miikka.heikkinen@digia.com>2014-04-28 09:31:10 +0300
committerMiikka Heikkinen <miikka.heikkinen@digia.com>2014-04-28 10:05:33 +0300
commitd5fe794178f755a259e7680bbf11571785abe14d (patch)
treec96ef2f5c6f707b4639fdd740f91f8e2679c63e7 /src/datavisualization/engine
parentac276e4f176844e6048ad3eb7b4de5eed7eaefcf (diff)
Fix texture cleanup.
Make deleteTexture also zero the pointer and do the check if deletion is needed, as those are required anyway on the caller side in most cases. Change-Id: Ia12102c97a647127230db2518c32f81322ce6743 Reviewed-by: Tomi Korpipää <tomi.korpipaa@digia.com>
Diffstat (limited to 'src/datavisualization/engine')
-rw-r--r--src/datavisualization/engine/abstract3drenderer.cpp11
-rw-r--r--src/datavisualization/engine/bars3drenderer.cpp10
-rw-r--r--src/datavisualization/engine/scatter3drenderer.cpp10
-rw-r--r--src/datavisualization/engine/surface3drenderer.cpp15
4 files changed, 9 insertions, 37 deletions
diff --git a/src/datavisualization/engine/abstract3drenderer.cpp b/src/datavisualization/engine/abstract3drenderer.cpp
index 458630ed..bd19959b 100644
--- a/src/datavisualization/engine/abstract3drenderer.cpp
+++ b/src/datavisualization/engine/abstract3drenderer.cpp
@@ -475,11 +475,7 @@ void Abstract3DRenderer::lowerShadowQuality()
void Abstract3DRenderer::generateBaseColorTexture(const QColor &color, GLuint *texture)
{
- if (*texture) {
- m_textureHelper->deleteTexture(texture);
- *texture = 0;
- }
-
+ m_textureHelper->deleteTexture(texture);
*texture = m_textureHelper->createUniformTexture(color);
}
@@ -489,10 +485,7 @@ void Abstract3DRenderer::fixGradientAndGenerateTexture(QLinearGradient *gradient
gradient->setStart(qreal(gradientTextureWidth), qreal(gradientTextureHeight));
gradient->setFinalStop(0.0, 0.0);
- if (*gradientTexture) {
- m_textureHelper->deleteTexture(gradientTexture);
- *gradientTexture = 0;
- }
+ m_textureHelper->deleteTexture(gradientTexture);
*gradientTexture = m_textureHelper->createGradientTexture(*gradient);
}
diff --git a/src/datavisualization/engine/bars3drenderer.cpp b/src/datavisualization/engine/bars3drenderer.cpp
index e41d35b0..01fcebb2 100644
--- a/src/datavisualization/engine/bars3drenderer.cpp
+++ b/src/datavisualization/engine/bars3drenderer.cpp
@@ -2267,10 +2267,7 @@ void Bars3DRenderer::initSelectionShader()
void Bars3DRenderer::initSelectionBuffer()
{
- if (m_selectionTexture) {
- m_textureHelper->deleteTexture(&m_selectionTexture);
- m_selectionTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_selectionTexture);
if (m_cachedIsSlicingActivated || m_primarySubViewport.size().isEmpty())
return;
@@ -2292,10 +2289,7 @@ void Bars3DRenderer::initDepthShader()
void Bars3DRenderer::updateDepthBuffer()
{
- if (m_depthTexture) {
- m_textureHelper->deleteTexture(&m_depthTexture);
- m_depthTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_depthTexture);
if (m_primarySubViewport.size().isEmpty())
return;
diff --git a/src/datavisualization/engine/scatter3drenderer.cpp b/src/datavisualization/engine/scatter3drenderer.cpp
index 3bd06517..5d37e6e1 100644
--- a/src/datavisualization/engine/scatter3drenderer.cpp
+++ b/src/datavisualization/engine/scatter3drenderer.cpp
@@ -1690,10 +1690,7 @@ void Scatter3DRenderer::initSelectionShader()
void Scatter3DRenderer::initSelectionBuffer()
{
- if (m_selectionTexture) {
- m_textureHelper->deleteTexture(&m_selectionTexture);
- m_selectionTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_selectionTexture);
if (m_primarySubViewport.size().isEmpty())
return;
@@ -1715,10 +1712,7 @@ void Scatter3DRenderer::initDepthShader()
void Scatter3DRenderer::updateDepthBuffer()
{
- if (m_depthTexture) {
- m_textureHelper->deleteTexture(&m_depthTexture);
- m_depthTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_depthTexture);
if (m_primarySubViewport.size().isEmpty())
return;
diff --git a/src/datavisualization/engine/surface3drenderer.cpp b/src/datavisualization/engine/surface3drenderer.cpp
index f79f92f6..f04277f7 100644
--- a/src/datavisualization/engine/surface3drenderer.cpp
+++ b/src/datavisualization/engine/surface3drenderer.cpp
@@ -2041,10 +2041,7 @@ void Surface3DRenderer::createSelectionTexture(SurfaceSeriesRenderCache *cache,
void Surface3DRenderer::initSelectionBuffer()
{
// Create the result selection texture and buffers
- if (m_selectionResultTexture) {
- m_textureHelper->deleteTexture(&m_selectionResultTexture);
- m_selectionResultTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_selectionResultTexture);
m_selectionResultTexture = m_textureHelper->createSelectionTexture(m_primarySubViewport.size(),
m_selectionFrameBuffer,
@@ -2480,14 +2477,8 @@ void Surface3DRenderer::initDepthShader()
void Surface3DRenderer::updateDepthBuffer()
{
- if (m_depthTexture) {
- m_textureHelper->deleteTexture(&m_depthTexture);
- m_depthTexture = 0;
- }
- if (m_depthModelTexture) {
- m_textureHelper->deleteTexture(&m_depthModelTexture);
- m_depthModelTexture = 0;
- }
+ m_textureHelper->deleteTexture(&m_depthTexture);
+ m_textureHelper->deleteTexture(&m_depthModelTexture);
if (m_primarySubViewport.size().isEmpty())
return;