Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix issue 2093: pfree() called with a NULL pointer (#2095) #2104

Merged
merged 1 commit into from
Sep 11, 2024

Conversation

jrgemignani
Copy link
Contributor

Fixed issue 2093 where pfree() was called with a NULL pointer.

The issue is due to some confusion with pfree(). There are 2 definitions for it, one that checks for a passed NULL and the other which does not.

Created a function, pfree_if_not_null(), to check for NULL and call pfree() if a NULL wasn't passed.

Modified the pfree references in the following files -

src/backend/commands/label_commands.c
src/backend/executor/cypher_merge.c
src/backend/executor/cypher_set.c
src/backend/parser/ag_scanner.l
src/backend/parser/cypher_analyze.c
src/backend/parser/cypher_expr.c
src/backend/parser/cypher_gram.y
src/backend/parser/cypher_parse_agg.c
src/backend/utils/adt/age_global_graph.c
src/backend/utils/adt/age_graphid_ds.c
src/backend/utils/adt/age_session_info.c
src/backend/utils/adt/age_vle.c
src/backend/utils/adt/agtype.c
src/backend/utils/adt/agtype_gin.c
src/backend/utils/adt/agtype_raw.c
src/backend/utils/adt/agtype_util.c
src/backend/utils/load/ag_load_edges.c
src/backend/utils/load/ag_load_labels.c
src/include/utils/age_graphid_ds.h
src/include/utils/age_session_info.h
src/include/utils/agtype.h

Added regression tests for the original issue.

Resolved Conflicts:
src/backend/commands/label_commands.c
src/backend/parser/cypher_expr.c
src/backend/parser/cypher_parse_agg.c
src/backend/utils/adt/age_global_graph.c
src/backend/utils/adt/agtype.c

@github-actions github-actions bot added PG12 PostgreSQL12 override-stale To keep issues/PRs untouched from stale action labels Sep 11, 2024
Fixed issue 2093 where pfree() was called with a NULL pointer.

The issue is due to some confusion with pfree(). There are 2
definitions for it, one that checks for a passed NULL and the
other which does not.

Created a function, pfree_if_not_null(), to check for NULL and
call pfree() if a NULL wasn't passed.

Modified the pfree references in the following files -

   src/backend/commands/label_commands.c
   src/backend/executor/cypher_merge.c
   src/backend/executor/cypher_set.c
   src/backend/executor/cypher_utils.c
   src/backend/parser/ag_scanner.l
   src/backend/parser/cypher_analyze.c
   src/backend/parser/cypher_expr.c
   src/backend/parser/cypher_gram.y
   src/backend/parser/cypher_parse_agg.c
   src/backend/utils/adt/age_global_graph.c
   src/backend/utils/adt/age_graphid_ds.c
   src/backend/utils/adt/age_session_info.c
   src/backend/utils/adt/age_vle.c
   src/backend/utils/adt/agtype.c
   src/backend/utils/adt/agtype_gin.c
   src/backend/utils/adt/agtype_raw.c
   src/backend/utils/adt/agtype_util.c
   src/backend/utils/load/ag_load_edges.c
   src/backend/utils/load/ag_load_labels.c
   src/include/utils/age_graphid_ds.h
   src/include/utils/age_session_info.h
   src/include/utils/agtype.h

Added regression tests for the original issue.

Resolved Conflicts:
	src/backend/commands/label_commands.c
	src/backend/parser/cypher_expr.c
	src/backend/parser/cypher_parse_agg.c
	src/backend/utils/adt/age_global_graph.c
	src/backend/utils/adt/agtype.c
@MuhammadTahaNaveed MuhammadTahaNaveed merged commit 6eeceae into apache:PG12 Sep 11, 2024
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
override-stale To keep issues/PRs untouched from stale action PG12 PostgreSQL12
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants