mirror of
https://github.com/postgres/postgres.git
synced 2025-05-28 05:21:27 +03:00
Fix type confusion in guc_var_compare()
Before this change guc_var_compare() cast the input arguments to const struct config_generic *. That's not quite right however, as the input on one side is often just a char * on one side. Instead just use char *, the first field in config_generic. This fixes a -Warray-bounds warning with some versions of gcc. While the warning is only known to be triggered for <= 15, the issue the warning points out seems real, so apply the fix everywhere. Author: Nazir Bilal Yavuz <byavuz81@gmail.com> Reported-by: Erik Rijkers <er@xs4all.nl> Suggested-by: Andres Freund <andres@anarazel.de> Discussion: https://postgr.es/m/a74a1a0d-0fd2-3649-5224-4f754e8f91aa%40xs4all.nl
This commit is contained in:
parent
8fc4876147
commit
2ad3b9350f
@ -1252,10 +1252,10 @@ find_option(const char *name, bool create_placeholders, bool skip_errors,
|
||||
static int
|
||||
guc_var_compare(const void *a, const void *b)
|
||||
{
|
||||
const struct config_generic *confa = *(struct config_generic *const *) a;
|
||||
const struct config_generic *confb = *(struct config_generic *const *) b;
|
||||
const char *namea = **(const char ** const *) a;
|
||||
const char *nameb = **(const char ** const *) b;
|
||||
|
||||
return guc_name_compare(confa->name, confb->name);
|
||||
return guc_name_compare(namea, nameb);
|
||||
}
|
||||
|
||||
/*
|
||||
|
Loading…
x
Reference in New Issue
Block a user