Re: [PATCH] perf probe: check if *ptr2 is zero and not ptr2

From: Colin Ian King
Date: Mon Oct 03 2016 - 07:22:42 EST


On 03/10/16 12:19, Arnaldo Carvalho de Melo wrote:
> Em Mon, Oct 03, 2016 at 11:34:31AM +0100, Colin King escreveu:
>> From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>>
>> Static anaylsis with cppcheck detected an incorrect comparison:
>> [tools/perf/util/probe-event.c:216]: (warning) Char literal compared with
>> pointer 'ptr2'. Did you intend to dereference it?
>
> What tool was used for that?

cppcheck https://github.com/danmar/cppcheck - I run it nearly daily on
linux-next and linux

>
> - Arnaldo
>
>> Dereference ptr2 for the comparison to fix this.
>>
>> Fixes: 35726d3a4ca9 ("perf probe: Fix to cut off incompatible chars from group name")
>> Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
>> ---
>> tools/perf/util/probe-event.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
>> index fcfbef0..d281ae2 100644
>> --- a/tools/perf/util/probe-event.c
>> +++ b/tools/perf/util/probe-event.c
>> @@ -213,7 +213,7 @@ static int convert_exec_to_group(const char *exec, char **result)
>> goto out;
>> }
>>
>> - for (ptr2 = ptr1; ptr2 != '\0'; ptr2++) {
>> + for (ptr2 = ptr1; *ptr2 != '\0'; ptr2++) {
>> if (!isalnum(*ptr2) && *ptr2 != '_') {
>> *ptr2 = '\0';
>> break;
>> --
>> 2.9.3