Explicit NULL dereference (src/backend/commands/tablecmds.c)

Поиск
Список
Период
Сортировка
От Ranier Vilela
Тема Explicit NULL dereference (src/backend/commands/tablecmds.c)
Дата
Msg-id CAEudQApoJeWf8XKshcJjdnAPaV+SN0x_hHPoE9+xKLC7ifVFuQ@mail.gmail.com
обсуждение исходный текст
Ответы Re: Explicit NULL dereference (src/backend/commands/tablecmds.c)  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
Hi,

Per Coverity.
CID 1453114 (#1 of 1): Explicit null dereferenced (FORWARD_NULL)
53. var_deref_model: Passing null pointer child_expr to strcmp, which dereferences it.

It is agreed that asserts should be used for error conditions that can never occur in the release.
But with errors that can occur, using assert does not make sense.

Better to make sure that strcmp can be called without risk.
Meanwhile, fix the strcmp call signature (const char).

#include <stdio.h>
#include <string.h>

int main()
{
    const char * s1="";
    const char * s2="0";
   
    if (strstr(s1, s2) != 0) {
        printf("found");
    } else {
        printf("not found");
    }
}
not found!

regards,
Ranier Vilela
Вложения

В списке pgsql-hackers по дате отправления:

Предыдущее
От: vignesh C
Дата:
Сообщение: Re: subscriptioncheck failure
Следующее
От: Tom Lane
Дата:
Сообщение: Re: Explicit NULL dereference (src/backend/commands/tablecmds.c)