Passes the Renderer to various objects at construction time.
TRAC #22000
Signed-off-by: Daniel Koch
Author: Shannon Woods
git-svn-id: https://angleproject.googlecode.com/svn/branches/dx11proto@1406 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/Program.cpp b/src/libGLESv2/Program.cpp
index 5f53a1f..2a72e02 100644
--- a/src/libGLESv2/Program.cpp
+++ b/src/libGLESv2/Program.cpp
@@ -136,7 +136,7 @@
}
}
-Program::Program(ResourceManager *manager, GLuint handle) : mResourceManager(manager), mHandle(handle)
+Program::Program(rx::Renderer *renderer, ResourceManager *manager, GLuint handle) : mResourceManager(manager), mHandle(handle)
{
mFragmentShader = NULL;
mVertexShader = NULL;
@@ -144,6 +144,7 @@
mDeleteStatus = false;
mLinked = false;
mRefCount = 0;
+ mRenderer = renderer;
}
Program::~Program()
@@ -247,7 +248,7 @@
mInfoLog.reset();
- mProgramBinary.set(new ProgramBinary());
+ mProgramBinary.set(new ProgramBinary(mRenderer));
mLinked = mProgramBinary->link(mInfoLog, mAttributeBindings, mFragmentShader, mVertexShader);
return mLinked;
@@ -304,7 +305,7 @@
mInfoLog.reset();
- mProgramBinary.set(new ProgramBinary());
+ mProgramBinary.set(new ProgramBinary(mRenderer));
mLinked = mProgramBinary->load(mInfoLog, binary, length);
if (!mLinked)
{