Re: BUG #16189: The usage of NULL pointer in indexpath.c

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: BUG #16189: The usage of NULL pointer in indexpath.c
Дата
Msg-id 885.1578283887@sss.pgh.pa.us
обсуждение исходный текст
Ответ на BUG #16189: The usage of NULL pointer in indexpath.c  (PG Bug reporting form <noreply@postgresql.org>)
Список pgsql-bugs
PG Bug reporting form <noreply@postgresql.org> writes:
> We checked the code in file “indexpath.c” and there are five errors
> occurring in lines 2799, 2881, 2882, 2883 and 2884. These five errors are
> all caused by the usage of pointers with NULL values. The code in line 2799
> is “leftop = (Node *) linitial(saop->args);” The pointer “soap” mentioned in
> this line is defined by the code in line 2786 as “ScalarArrayOpExpr *saop =
> (ScalarArrayOpExpr *) rinfo->clause;”, so it is assigned as the “clause”
> field of the input pointer “rinfo” of function
> “match_saopclause_to_indexcol”. For the rest four errors, the codes are
> “leftop = (Node *) linitial(clause->largs);”, “rightop = (Node *)
> linitial(clause->rargs);”, “expr_op = linitial_oid(clause->opnos);”, and
> “expr_coll = linitial_oid(clause->inputcollids);” respectively. The pointer
> “clause” mentioned in these four lines is defined by the code in line 2853
> as “RowCompareExpr *clause = (RowCompareExpr *) rinfo->clause;”, so it is
> assigned as the “clause” field of the input pointer “rinfo” of function
> “match_rowcompare_to_indexcol”.

And?  You haven't given any reason to think that any of that is a problem.

It is true that this code is expecting that these lists aren't empty,
but that's checked upstream of here.

            regards, tom lane



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: BUG #16188: The usage of NULL pointer in rege_dfa.c
Следующее
От: Michael Paquier
Дата:
Сообщение: Re: BUG #16190: The usage of NULL pointer in refint.c