mirror of
https://github.com/postgres/postgres.git
synced 2025-07-02 09:02:37 +03:00
Add repalloc0 and repalloc0_array
These zero out the space added by repalloc. This is a common pattern that is quite hairy to code by hand. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/b66dfc89-9365-cb57-4e1f-b7d31813eeec@enterprisedb.com
This commit is contained in:
@ -4855,14 +4855,9 @@ expand_colnames_array_to(deparse_columns *colinfo, int n)
|
||||
if (n > colinfo->num_cols)
|
||||
{
|
||||
if (colinfo->colnames == NULL)
|
||||
colinfo->colnames = (char **) palloc0(n * sizeof(char *));
|
||||
colinfo->colnames = palloc0_array(char *, n);
|
||||
else
|
||||
{
|
||||
colinfo->colnames = (char **) repalloc(colinfo->colnames,
|
||||
n * sizeof(char *));
|
||||
memset(colinfo->colnames + colinfo->num_cols, 0,
|
||||
(n - colinfo->num_cols) * sizeof(char *));
|
||||
}
|
||||
colinfo->colnames = repalloc0_array(colinfo->colnames, char *, colinfo->num_cols, n);
|
||||
colinfo->num_cols = n;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user