Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8f097c5a authored by Alex Sakhartchouk's avatar Alex Sakhartchouk Committed by Android (Google) Code Review
Browse files

Merge "fixing bugs 3053960, 3044804, 3044798 shader cleanup and removing unnecessary state setup."

parents 69e67a0f feede2ae
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -241,6 +241,10 @@ bool Context::setupCheck()
    return true;
}

void Context::setupProgramStore() {
    mFragmentStore->setupGL2(this, &mStateFragmentStore);
}

static bool getProp(const char *str)
{
    char buf[PROPERTY_VALUE_MAX];
+1 −0
Original line number Diff line number Diff line
@@ -118,6 +118,7 @@ public:
    Font * getFont() {return mFont.get();}

    bool setupCheck();
    void setupProgramStore();
    bool checkDriver() const {return mEGL.mSurface != 0;}

    void pause();
+8 −0
Original line number Diff line number Diff line
@@ -115,6 +115,14 @@ Program::Program(Context *rsc, const char * shaderText, uint32_t shaderLength,

Program::~Program()
{
    if(mRSC->props.mLogShaders) {
        LOGV("Program::~Program with shader id %u", mShaderID);
    }

    if(mShaderID) {
        glDeleteShader(mShaderID);
    }

    for (uint32_t ct=0; ct < MAX_UNIFORMS; ct++) {
        bindAllocation(NULL, NULL, ct);
    }
+3 −0
Original line number Diff line number Diff line
@@ -49,6 +49,9 @@ ProgramFragment::ProgramFragment(Context *rsc, const char * shaderText,

ProgramFragment::~ProgramFragment()
{
    if(mShaderID) {
        mRSC->mShaderCache.cleanupFragment(mShaderID);
    }
}

void ProgramFragment::setConstantColor(Context *rsc, float r, float g, float b, float a)
+3 −9
Original line number Diff line number Diff line
@@ -45,15 +45,9 @@ ProgramVertex::ProgramVertex(Context *rsc, const char * shaderText,

ProgramVertex::~ProgramVertex()
{
    if(mShaderID) {
        mRSC->mShaderCache.cleanupVertex(mShaderID);
    }

static void logMatrix(const char *txt, const float *f)
{
    LOGV("Matrix %s, %p", txt, f);
    LOGV("%6.4f, %6.4f, %6.4f, %6.4f", f[0], f[4], f[8], f[12]);
    LOGV("%6.4f, %6.4f, %6.4f, %6.4f", f[1], f[5], f[9], f[13]);
    LOGV("%6.4f, %6.4f, %6.4f, %6.4f", f[2], f[6], f[10], f[14]);
    LOGV("%6.4f, %6.4f, %6.4f, %6.4f", f[3], f[7], f[11], f[15]);
}

void ProgramVertex::loadShader(Context *rsc) {
Loading