Fix memory leaks.
authortomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Tue, 19 Jun 2012 15:27:50 +0000 (15:27 +0000)
committertomhudson@google.com <tomhudson@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>
Tue, 19 Jun 2012 15:27:50 +0000 (15:27 +0000)
http://codereview.appspot.com/6301098/

git-svn-id: http://skia.googlecode.com/svn/trunk@4281 2bbb7eff-a529-9590-31e7-b0007b416f81

include/gpu/GrSamplerState.h
src/gpu/gl/GrGpuGL_program.cpp

index f8ad1c0..1f81afa 100644 (file)
@@ -81,8 +81,7 @@ public:
         fSwapRAndB = s.fSwapRAndB;
         fTextureDomain = s.fTextureDomain;
 
-        fCustomStage = s.fCustomStage;
-        SkSafeRef(fCustomStage);
+        GrSafeAssign(fCustomStage, s.fCustomStage);
 
         return *this;
     }
index 97f9b6d..f8d71ff 100644 (file)
@@ -86,7 +86,10 @@ void GrGpuGL::DeleteProgram(const GrGLInterface* gl,
     }
     GR_GL_CALL(gl, DeleteShader(programData->fFShaderID));
     GR_GL_CALL(gl, DeleteProgram(programData->fProgramID));
-    GR_DEBUGCODE(memset(programData, 0, sizeof(*programData));)
+    GR_DEBUGCODE(programData->fVShaderID = 0);
+    GR_DEBUGCODE(programData->fGShaderID = 0);
+    GR_DEBUGCODE(programData->fFShaderID = 0);
+    GR_DEBUGCODE(programData->fProgramID = 0);
 }
 
 ////////////////////////////////////////////////////////////////////////////////