Collected from the PG bugs email list.
|Reported by||Jian Zhang|
Body of first available message related to this bug follows.
The following bug has been logged on the website: Bug reference: 16189 Logged by: Jian Zhang Email address: (redacted) PostgreSQL version: 12.1 Operating system: Linux Description: 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”. The program should check the effectiveness of the input parameter “rinfo” of the function “match_saopclause_to_indexcol” and the input parameter “rinfo” of the function “match_rowcompare_to_indexcol” to avoid these five errors.
|2020-01-06 03:37:43+00||PG Bug reporting form||BUG #16189: The usage of NULL pointer in indexpath.c|
|2020-01-06 04:11:27+00||Tom Lane||Re: BUG #16189: The usage of NULL pointer in indexpath.c|