Commit bde4c2f7 by Jamie Madill

Force a compiler release when we terminate the Renderer.

Forcing the release ensures we always manually deallocate resources, and allows us to compile for different shader model versions after releasing the renderer. BUG=angle:619 Change-Id: I0c9d68a454c7779a024f4fcc4f4987c2abe12e60 Reviewed-on: https://chromium-review.googlesource.com/196820Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org> Reviewed-by: 's avatarNicolas Capens <nicolascapens@chromium.org> Tested-by: 's avatarJamie Madill <jmadill@chromium.org>
parent a56a86e6
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include "libGLESv2/renderer/Renderer.h" #include "libGLESv2/renderer/Renderer.h"
#include "common/utilities.h" #include "common/utilities.h"
#include "third_party/trace_event/trace_event.h" #include "third_party/trace_event/trace_event.h"
#include "libGLESv2/Shader.h"
#if defined (ANGLE_ENABLE_D3D9) #if defined (ANGLE_ENABLE_D3D9)
#include "libGLESv2/renderer/d3d9/Renderer9.h" #include "libGLESv2/renderer/d3d9/Renderer9.h"
...@@ -35,6 +36,11 @@ Renderer::Renderer(egl::Display *display) : mDisplay(display) ...@@ -35,6 +36,11 @@ Renderer::Renderer(egl::Display *display) : mDisplay(display)
mCurrentClientVersion = 2; mCurrentClientVersion = 2;
} }
Renderer::~Renderer()
{
gl::Shader::releaseCompiler();
}
} }
extern "C" extern "C"
......
...@@ -101,7 +101,7 @@ class Renderer ...@@ -101,7 +101,7 @@ class Renderer
{ {
public: public:
explicit Renderer(egl::Display *display); explicit Renderer(egl::Display *display);
virtual ~Renderer() {} virtual ~Renderer();
virtual EGLint initialize() = 0; virtual EGLint initialize() = 0;
virtual bool resetDevice() = 0; virtual bool resetDevice() = 0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment