Return error if allocation of new element was not possible.

Found by Coverity.
This commit is contained in:
Michael Meskes 2013-09-08 12:59:43 +02:00
parent 579dae5bc0
commit 9c68834bfc

View File

@ -430,14 +430,18 @@ PGTYPESnumeric_to_asc(numeric *num, int dscale)
numeric *numcopy = PGTYPESnumeric_new();
char *s;
if (dscale < 0)
dscale = num->dscale;
if (numcopy == NULL)
return NULL;
if (PGTYPESnumeric_copy(num, numcopy) < 0)
{
PGTYPESnumeric_free(numcopy);
return NULL;
}
if (dscale < 0)
dscale = num->dscale;
/* get_str_from_var may change its argument */
s = get_str_from_var(numcopy, dscale);
PGTYPESnumeric_free(numcopy);
@ -1519,6 +1523,9 @@ numericvar_to_double(numeric *var, double *dp)
char *endptr;
numeric *varcopy = PGTYPESnumeric_new();
if (varcopy == NULL)
return -1;
if (PGTYPESnumeric_copy(var, varcopy) < 0)
{
PGTYPESnumeric_free(varcopy);