コード例 #1
0
ファイル: shaderobj.c プロジェクト: CSRedRat/mesa-1
/**
 * Free/delete a shader program object.
 * Called via ctx->Driver.DeleteShaderProgram().
 */
static void
_mesa_delete_shader_program(struct gl_context *ctx, struct gl_shader_program *shProg)
{
   _mesa_free_shader_program_data(ctx, shProg);

   ralloc_free(shProg);
}
コード例 #2
0
ファイル: shader_api.c プロジェクト: Starlink/mesa
/**
 * Free/delete a shader program object.
 */
void
_mesa_free_shader_program(GLcontext *ctx, struct gl_shader_program *shProg)
{
   _mesa_free_shader_program_data(ctx, shProg);

   _mesa_free(shProg);
}
コード例 #3
0
ファイル: shaderobj.c プロジェクト: Echelon9/mesa
/**
 * Free/delete a shader program object.
 */
void
_mesa_delete_shader_program(struct gl_context *ctx,
                            struct gl_shader_program *shProg)
{
   _mesa_free_shader_program_data(ctx, shProg);
   _mesa_reference_shader_program_data(ctx, &shProg->data, NULL);
   ralloc_free(shProg);
}
コード例 #4
0
ファイル: shared.c プロジェクト: toastpp/toastpp
/**
 * Callback for freeing shader program data. Call it before delete_shader_cb
 * to avoid memory access error.
 */
static void
free_shader_program_data_cb(GLuint id, void *data, void *userData)
{
   GLcontext *ctx = (GLcontext *) userData;
   struct gl_shader_program *shProg = (struct gl_shader_program *) data;

   if (shProg->Type == GL_SHADER_PROGRAM_MESA) {
       _mesa_free_shader_program_data(ctx, shProg);
   }
}