mirror of
https://github.com/postgres/postgres.git
synced 2025-07-31 22:04:40 +03:00
Switch some palloc/memset calls to palloc0
Some code paths have been doing some allocations followed by an immediate memset() to initialize the allocated area with zeros, this is a bit overkill as there are already interfaces to do both things in one call. Author: Daniel Gustafsson Reviewed-by: Michael Paquier Discussion: https://postgr.es/m/vN0OodBPkKs7g2Z1uyk3CUEmhdtspHgYCImhlmSxv1Xn6nY1ZnaaGHL8EWUIQ-NEv36tyc4G5-uA3UXUF2l4sFXtK_EQgLN1hcgunlFVKhA=@yesql.se
This commit is contained in:
@ -867,11 +867,8 @@ get_crosstab_tuplestore(char *sql,
|
|||||||
"tuple has %d columns but crosstab " \
|
"tuple has %d columns but crosstab " \
|
||||||
"returns %d.", tupdesc->natts, result_ncols)));
|
"returns %d.", tupdesc->natts, result_ncols)));
|
||||||
|
|
||||||
/* allocate space */
|
/* allocate space and make sure it's clear */
|
||||||
values = (char **) palloc(result_ncols * sizeof(char *));
|
values = (char **) palloc0(result_ncols * sizeof(char *));
|
||||||
|
|
||||||
/* and make sure it's clear */
|
|
||||||
memset(values, '\0', result_ncols * sizeof(char *));
|
|
||||||
|
|
||||||
for (i = 0; i < proc; i++)
|
for (i = 0; i < proc; i++)
|
||||||
{
|
{
|
||||||
|
@ -43,8 +43,7 @@ static void gistprunepage(Relation rel, Page page, Buffer buffer,
|
|||||||
|
|
||||||
|
|
||||||
#define ROTATEDIST(d) do { \
|
#define ROTATEDIST(d) do { \
|
||||||
SplitedPageLayout *tmp=(SplitedPageLayout*)palloc(sizeof(SplitedPageLayout)); \
|
SplitedPageLayout *tmp=(SplitedPageLayout*)palloc0(sizeof(SplitedPageLayout)); \
|
||||||
memset(tmp,0,sizeof(SplitedPageLayout)); \
|
|
||||||
tmp->block.blkno = InvalidBlockNumber; \
|
tmp->block.blkno = InvalidBlockNumber; \
|
||||||
tmp->buffer = InvalidBuffer; \
|
tmp->buffer = InvalidBuffer; \
|
||||||
tmp->next = (d); \
|
tmp->next = (d); \
|
||||||
|
@ -1382,8 +1382,7 @@ SortTocFromFile(Archive *AHX)
|
|||||||
bool incomplete_line;
|
bool incomplete_line;
|
||||||
|
|
||||||
/* Allocate space for the 'wanted' array, and init it */
|
/* Allocate space for the 'wanted' array, and init it */
|
||||||
ropt->idWanted = (bool *) pg_malloc(sizeof(bool) * AH->maxDumpId);
|
ropt->idWanted = (bool *) pg_malloc0(sizeof(bool) * AH->maxDumpId);
|
||||||
memset(ropt->idWanted, 0, sizeof(bool) * AH->maxDumpId);
|
|
||||||
|
|
||||||
/* Setup the file */
|
/* Setup the file */
|
||||||
fh = fopen(ropt->tocFile, PG_BINARY_R);
|
fh = fopen(ropt->tocFile, PG_BINARY_R);
|
||||||
|
@ -320,8 +320,7 @@ TopoSort(DumpableObject **objs,
|
|||||||
* We also make a map showing the input-order index of the item with
|
* We also make a map showing the input-order index of the item with
|
||||||
* dumpId j.
|
* dumpId j.
|
||||||
*/
|
*/
|
||||||
beforeConstraints = (int *) pg_malloc((maxDumpId + 1) * sizeof(int));
|
beforeConstraints = (int *) pg_malloc0((maxDumpId + 1) * sizeof(int));
|
||||||
memset(beforeConstraints, 0, (maxDumpId + 1) * sizeof(int));
|
|
||||||
idMap = (int *) pg_malloc((maxDumpId + 1) * sizeof(int));
|
idMap = (int *) pg_malloc((maxDumpId + 1) * sizeof(int));
|
||||||
for (i = 0; i < numObjs; i++)
|
for (i = 0; i < numObjs; i++)
|
||||||
{
|
{
|
||||||
|
@ -5301,8 +5301,7 @@ main(int argc, char **argv)
|
|||||||
else if ((env = getenv("PGUSER")) != NULL && *env != '\0')
|
else if ((env = getenv("PGUSER")) != NULL && *env != '\0')
|
||||||
login = env;
|
login = env;
|
||||||
|
|
||||||
state = (CState *) pg_malloc(sizeof(CState));
|
state = (CState *) pg_malloc0(sizeof(CState));
|
||||||
memset(state, 0, sizeof(CState));
|
|
||||||
|
|
||||||
/* set random seed early, because it may be used while parsing scripts. */
|
/* set random seed early, because it may be used while parsing scripts. */
|
||||||
if (!set_random_seed(getenv("PGBENCH_RANDOM_SEED")))
|
if (!set_random_seed(getenv("PGBENCH_RANDOM_SEED")))
|
||||||
|
Reference in New Issue
Block a user