summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorMarkus Mohrhard <markus.mohrhard@collabora.co.uk>2014-12-30 19:16:35 +0100
committerMarkus Mohrhard <markus.mohrhard@collabora.co.uk>2014-12-31 01:04:30 +0100
commite61fe35e7997082a4478dabde5123ecc63536538 (patch)
treebbe0b82f5477c35e43a7b4b91e77330f7bc0f2a8 /vcl
parentc805a996c97097d2a47039355fffba678a84e1b0 (diff)
prefer ptr_container to manual memory management
Change-Id: I11326c2873aad5116fd70bfa31eb94e93fef3f40
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/opengl/OpenGLContext.cxx13
1 files changed, 3 insertions, 10 deletions
diff --git a/vcl/source/opengl/OpenGLContext.cxx b/vcl/source/opengl/OpenGLContext.cxx
index 182a2e95be19..138a79ed0e2c 100644
--- a/vcl/source/opengl/OpenGLContext.cxx
+++ b/vcl/source/opengl/OpenGLContext.cxx
@@ -1161,15 +1161,8 @@ void OpenGLContext::reset()
// destroy all programs
if( !maPrograms.empty() )
{
- boost::unordered_map<ProgramKey, OpenGLProgram*>::iterator it;
makeCurrent();
- it = maPrograms.begin();
- while( it != maPrograms.end() )
- {
- delete it->second;
- ++it;
- }
maPrograms.clear();
}
@@ -1527,10 +1520,10 @@ void OpenGLContext::ReleaseFramebuffers()
OpenGLProgram* OpenGLContext::GetProgram( const OUString& rVertexShader, const OUString& rFragmentShader )
{
- boost::unordered_map<ProgramKey, OpenGLProgram*>::iterator it;
ProgramKey aKey( rVertexShader, rFragmentShader );
- it = maPrograms.find( aKey );
+ boost::ptr_map<ProgramKey, OpenGLProgram>::iterator
+ it = maPrograms.find( aKey );
if( it != maPrograms.end() )
return it->second;
@@ -1541,7 +1534,7 @@ OpenGLProgram* OpenGLContext::GetProgram( const OUString& rVertexShader, const O
return NULL;
}
- maPrograms[aKey] = pProgram;
+ maPrograms.insert(aKey, pProgram);
return pProgram;
}