From 33e11cd6149294060269ed693de67b135868e094 Mon Sep 17 00:00:00 2001 From: Zhigang Gong Date: Sat, 28 Apr 2012 14:54:38 +0800 Subject: [PATCH] Fixed an uninitialized problem at gradient shader functions. Signed-off-by: Zhigang Gong --- glamor/glamor_render.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/glamor/glamor_render.c b/glamor/glamor_render.c index c6f9c0634..b729e986d 100644 --- a/glamor/glamor_render.c +++ b/glamor/glamor_render.c @@ -1651,6 +1651,8 @@ _glamor_create_radial_gradient_program(ScreenPtr screen, int stops_count, int dy return; } + dispatch = glamor_get_dispatch(glamor_priv); + if (dyn_gen && glamor_priv->gradient_prog[SHADER_GRADIENT_RADIAL][2]) { dispatch->glDeleteShader( glamor_priv->radial_gradient_shaders[SHADER_GRADIENT_VS_PROG][2]); @@ -1668,8 +1670,6 @@ _glamor_create_radial_gradient_program(ScreenPtr screen, int stops_count, int dy glamor_priv->gradient_prog[SHADER_GRADIENT_RADIAL][2] = 0; } - dispatch = glamor_get_dispatch(glamor_priv); - gradient_prog = dispatch->glCreateProgram(); vs_prog = glamor_compile_glsl_prog(dispatch, @@ -1883,6 +1883,7 @@ _glamor_create_linear_gradient_program(ScreenPtr screen, int stops_count, int dy return; } + dispatch = glamor_get_dispatch(glamor_priv); if (dyn_gen && glamor_priv->gradient_prog[SHADER_GRADIENT_LINEAR][2]) { dispatch->glDeleteShader( glamor_priv->linear_gradient_shaders[SHADER_GRADIENT_VS_PROG][2]); @@ -1900,8 +1901,6 @@ _glamor_create_linear_gradient_program(ScreenPtr screen, int stops_count, int dy glamor_priv->gradient_prog[SHADER_GRADIENT_LINEAR][2] = 0; } - dispatch = glamor_get_dispatch(glamor_priv); - gradient_prog = dispatch->glCreateProgram(); vs_prog = glamor_compile_glsl_prog(dispatch,