From da87dc07f16e7435edc601661a6ec71b38bccd25 Mon Sep 17 00:00:00 2001 From: David Rowley Date: Mon, 29 Jul 2024 09:53:10 +1200 Subject: [PATCH] Add missing pointer dereference in pg_backend_memory_contexts view 32d3ed816 moved the logic for setting the context's name and ident into a reusable function. I missed adding a pointer dereference after copying and pasting the code into that function. The ident parameter is a pointer to the ident variable in the calling function, so the dereference is required to correctly determine if the contents of that variable is NULL or not. In passing, adjust the if condition to include an == NULL to make it more clear that it's not checking for == '\0'. Reported-by: Tom Lane, Coverity Discussion: https://postgr.es/m/2256588.1722184287@sss.pgh.pa.us --- src/backend/utils/adt/mcxtfuncs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/utils/adt/mcxtfuncs.c b/src/backend/utils/adt/mcxtfuncs.c index 199e68c1ae..5905958c1f 100644 --- a/src/backend/utils/adt/mcxtfuncs.c +++ b/src/backend/utils/adt/mcxtfuncs.c @@ -55,7 +55,7 @@ get_memory_context_name_and_ident(MemoryContext context, const char **const name * To be consistent with logging output, we label dynahash contexts with * just the hash table name as with MemoryContextStatsPrint(). */ - if (ident && strcmp(*name, "dynahash") == 0) + if (*ident == NULL && strcmp(*name, "dynahash") == 0) { *name = *ident; *ident = NULL;