diff options
-rw-r--r-- | src/mesa/state_tracker/st_framebuffer.c | 14 | ||||
-rw-r--r-- | src/mesa/state_tracker/st_public.h | 3 |
2 files changed, 17 insertions, 0 deletions
diff --git a/src/mesa/state_tracker/st_framebuffer.c b/src/mesa/state_tracker/st_framebuffer.c index 18669712c2f..99638c5d5ff 100644 --- a/src/mesa/state_tracker/st_framebuffer.c +++ b/src/mesa/state_tracker/st_framebuffer.c @@ -88,3 +88,17 @@ struct st_framebuffer *st_create_framebuffer( const __GLcontextModes *visual ) } +void st_resize_framebuffer( struct st_framebuffer *stfb, + GLuint width, GLuint height ) +{ + if (stfb->Base.Width != width || stfb->Base.Height != height) { + GET_CURRENT_CONTEXT(ctx); + if (ctx) { + _mesa_resize_framebuffer(ctx, &stfb->Base, width, height); + + assert(stfb->Base.Width == width); + assert(stfb->Base.Height == height); + } + } +} + diff --git a/src/mesa/state_tracker/st_public.h b/src/mesa/state_tracker/st_public.h index 94d1cdfde45..74a94d1abc6 100644 --- a/src/mesa/state_tracker/st_public.h +++ b/src/mesa/state_tracker/st_public.h @@ -48,6 +48,9 @@ void st_destroy_context2( struct st_context *st ); struct st_framebuffer *st_create_framebuffer( const __GLcontextModes *visual ); +void st_resize_framebuffer( struct st_framebuffer *, + GLuint width, GLuint height ); + void st_make_current(struct st_context *st, struct st_framebuffer *draw, struct st_framebuffer *read); |