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;
 }