[Mesa-dev] [PATCH 2/2] st/mesa: get rid of unnecessary 'goto' in DrawPixels

Brian Paul brianp at vmware.com
Mon Jul 11 14:23:51 PDT 2011


On 07/11/2011 02:33 PM, Marek Olšák wrote:
> ---
>   src/mesa/state_tracker/st_cb_drawpixels.c |   16 ++++++----------
>   1 files changed, 6 insertions(+), 10 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_cb_drawpixels.c b/src/mesa/state_tracker/st_cb_drawpixels.c
> index f25656a..d3e6aef 100644
> --- a/src/mesa/state_tracker/st_cb_drawpixels.c
> +++ b/src/mesa/state_tracker/st_cb_drawpixels.c
> @@ -988,11 +988,12 @@ st_DrawPixels(struct gl_context *ctx, GLint x, GLint y,
>      else if (format == GL_DEPTH_COMPONENT)
>         write_depth = GL_TRUE;
>
> -   if (write_stencil) {
> -      enum pipe_format tex_format;
> -      /* can we write to stencil if not fallback */
> -      if (!pipe->screen->get_param(pipe->screen, PIPE_CAP_SHADER_STENCIL_EXPORT))
> -	 goto stencil_fallback;
> +   if (write_stencil&&
> +       !pipe->screen->get_param(pipe->screen, PIPE_CAP_SHADER_STENCIL_EXPORT)) {
> +      /* software fallback */
> +      draw_stencil_pixels(ctx, x, y, width, height, format, type,
> +                          unpack, pixels);
> +      return;
>      }
>
>      /* Mesa state should be up to date by now */
> @@ -1083,11 +1084,6 @@ st_DrawPixels(struct gl_context *ctx, GLint x, GLint y,
>            pipe_resource_reference(&pt, NULL);
>         }
>      }
> -   return;
> -
> -stencil_fallback:
> -   draw_stencil_pixels(ctx, x, y, width, height, format, type,
> -		       unpack, pixels);
>   }
>
>


Reviewed-by: Brian Paul <brianp at vmware.com>


More information about the mesa-dev mailing list