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

Change-Id: Ibddf2ad3a26bb983fc43bdeb58b1cec6224920b4
diff --git a/rsProgram.cpp b/rsProgram.cpp
index 2531a9b..10e00e6 100644
--- a/rsProgram.cpp
+++ b/rsProgram.cpp
@@ -115,6 +115,14 @@
 
 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);
     }