Move blitter creation / destruction to device specific initialization / release.
TRAC #22016
Signed-off-by: Daniel Koch
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1489 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/renderer/Renderer9.cpp b/src/libGLESv2/renderer/Renderer9.cpp
index 039af19..3128003 100644
--- a/src/libGLESv2/renderer/Renderer9.cpp
+++ b/src/libGLESv2/renderer/Renderer9.cpp
@@ -95,8 +95,6 @@
Renderer9::~Renderer9()
{
releaseDeviceResources();
-
- delete mBlit;
if (mDevice)
{
@@ -375,8 +373,6 @@
initializeDevice();
- mBlit = new Blit(this);
-
return EGL_SUCCESS;
}
@@ -402,10 +398,9 @@
mSceneStarted = false;
- if (!mVertexDataManager)
- {
- mVertexDataManager = new gl::VertexDataManager(this);
- }
+ ASSERT(!mBlit && !mVertexDataManager);
+ mBlit = new Blit(this);
+ mVertexDataManager = new gl::VertexDataManager(this);
}
D3DPRESENT_PARAMETERS Renderer9::getDefaultPresentParameters()
@@ -1339,6 +1334,9 @@
mVertexShaderCache.clear();
mPixelShaderCache.clear();
+ delete mBlit;
+ mBlit = NULL;
+
delete mVertexDataManager;
mVertexDataManager = NULL;
}