[Mesa-dev] [PATCH 1/5] mesa: Fix bogus strncmp

Ilia Mirkin imirkin at alum.mit.edu
Tue May 31 18:55:22 UTC 2016


Reviewed-by: Ilia Mirkin <imirkin at alum.mit.edu>

On Tue, May 31, 2016 at 2:52 PM, Ian Romanick <idr at freedesktop.org> wrote:
> From: Ian Romanick <ian.d.romanick at intel.com>
>
> The string "[0]\0" is the same as "[0]" as far as the C string datatype
> is concerned.  That string has length 3.  strncmp(s, length_3_string, 4)
> is the same as strcmp(s, length_3_string), so make it be strcmp.
>
> v2: Not the same as strncmp(..., 3).  Noticed by Ilia.
>
> Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
> Cc: "12.0" <mesa-stable at lists.freedesktop.org>
> Cc: Samuel Iglesias Gonsalvez <siglesias at igalia.com>
> ---
>  src/mesa/main/shader_query.cpp | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/mesa/main/shader_query.cpp b/src/mesa/main/shader_query.cpp
> index 28d8147..eec933c 100644
> --- a/src/mesa/main/shader_query.cpp
> +++ b/src/mesa/main/shader_query.cpp
> @@ -505,7 +505,7 @@ _mesa_program_resource_find_name(struct gl_shader_program *shProg,
>        if (rname_last_square_bracket) {
>           baselen_without_array_index -= strlen(rname_last_square_bracket);
>           rname_has_array_index_zero =
> -            (strncmp(rname_last_square_bracket, "[0]\0", 4) == 0) &&
> +            (strcmp(rname_last_square_bracket, "[0]") == 0) &&
>              (baselen_without_array_index == strlen(name));
>        }
>
> --
> 2.5.5
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list