From e4848d21e8f384f4157076d5e7c7c9d38da6598e Mon Sep 17 00:00:00 2001 From: Chia-I Wu Date: Wed, 10 Mar 2010 22:20:15 +0800 Subject: gallium: Do not mix winsys-drawable-handle and context-private. update_buffer should be called with context-private, not winsys-drawable-handle. --- src/gallium/include/pipe/p_screen.h | 5 ++++- src/gallium/state_trackers/vega/vg_tracker.c | 10 +--------- 2 files changed, 5 insertions(+), 10 deletions(-) (limited to 'src/gallium') diff --git a/src/gallium/include/pipe/p_screen.h b/src/gallium/include/pipe/p_screen.h index 690455f722..b771bfe85e 100644 --- a/src/gallium/include/pipe/p_screen.h +++ b/src/gallium/include/pipe/p_screen.h @@ -265,6 +265,7 @@ struct pipe_screen { /** * Do any special operations to ensure buffer size is correct + * \param context_private the private data of the calling context */ void (*update_buffer)( struct pipe_screen *ws, void *context_private ); @@ -272,10 +273,12 @@ struct pipe_screen { /** * Do any special operations to ensure frontbuffer contents are * displayed, eg copy fake frontbuffer. + * \param winsys_drawable_handle an opaque handle that the calling context + * gets out-of-band */ void (*flush_frontbuffer)( struct pipe_screen *screen, struct pipe_surface *surf, - void *context_private ); + void *winsys_drawable_handle ); diff --git a/src/gallium/state_trackers/vega/vg_tracker.c b/src/gallium/state_trackers/vega/vg_tracker.c index a002e50faf..ea5c2ce41f 100644 --- a/src/gallium/state_trackers/vega/vg_tracker.c +++ b/src/gallium/state_trackers/vega/vg_tracker.c @@ -380,16 +380,8 @@ boolean st_make_current(struct vg_context *st, void *winsys_drawable_handle) { vg_set_current_context(st); - if (st) { + if (st) st->draw_buffer = draw; - - /* VG state tracker doesn't seem to do front-buffer rendering - * (no calls to flush_frontbuffer). If it ever did start doing - * that, it would need to pass this value down in the - * flush_frontbuffer call: - */ - st->pipe->priv = winsys_drawable_handle; - } return VG_TRUE; } -- cgit v1.2.3