Browse Source

Gallium:draw:aaline and aapoint: Restore the old hooks when we destroy our stage.

tags/mesa-8.0-rc1
Stéphane Marchesin 14 years ago
parent
commit
5349b95920

+ 8
- 0
src/gallium/auxiliary/draw/draw_pipe_aaline.c View File

@@ -784,6 +784,14 @@ aaline_destroy(struct draw_stage *stage)

draw_free_temp_verts( stage );

/* restore the old entry points */
pipe->create_fs_state = aaline->driver_create_fs_state;
pipe->bind_fs_state = aaline->driver_bind_fs_state;
pipe->delete_fs_state = aaline->driver_delete_fs_state;

pipe->bind_fragment_sampler_states = aaline->driver_bind_sampler_states;
pipe->set_fragment_sampler_views = aaline->driver_set_sampler_views;

FREE( stage );
}


+ 9
- 0
src/gallium/auxiliary/draw/draw_pipe_aapoint.c View File

@@ -768,7 +768,16 @@ aapoint_reset_stipple_counter(struct draw_stage *stage)
static void
aapoint_destroy(struct draw_stage *stage)
{
struct aapoint_stage* aapoint = aapoint_stage(stage);
struct pipe_context *pipe = stage->draw->pipe;

draw_free_temp_verts( stage );

/* restore the old entry points */
pipe->create_fs_state = aapoint->driver_create_fs_state;
pipe->bind_fs_state = aapoint->driver_bind_fs_state;
pipe->delete_fs_state = aapoint->driver_delete_fs_state;

FREE( stage );
}


Loading…
Cancel
Save