Fix shader object reference counting and hash table deallocation.
diff --git a/src/mesa/shader/shader_api.h b/src/mesa/shader/shader_api.h
index 2f73bb8..315f60a 100644
--- a/src/mesa/shader/shader_api.h
+++ b/src/mesa/shader/shader_api.h
@@ -46,7 +46,7 @@
                                struct gl_shader_program *shProg);
 
 extern void
-_mesa_delete_shader_program(GLcontext *ctx, struct gl_shader_program *shProg);
+_mesa_free_shader_program(GLcontext *ctx, struct gl_shader_program *shProg);
 
 extern struct gl_shader_program *
 _mesa_lookup_shader_program(GLcontext *ctx, GLuint name);
@@ -55,6 +55,9 @@
 extern struct gl_shader *
 _mesa_new_shader(GLcontext *ctx, GLuint name, GLenum type);
 
+extern void
+_mesa_free_shader(GLcontext *ctx, struct gl_shader *sh);
+
 extern struct gl_shader *
 _mesa_lookup_shader(GLcontext *ctx, GLuint name);