Fix multiple bugs in numeric_poly_deserialize().

These were evidently introduced by yesterday's commit 9cca11c91,
which perhaps needs more review than it got.

Per report from Andreas Seltenreich and additional examination
of nearby code.

Report: <87oa45qfwq.fsf@credativ.de>
pull/17/head
Tom Lane 9 years ago
parent 60893786d5
commit 600dc4c0da
  1. 4
      src/backend/utils/adt/numeric.c

@ -4193,11 +4193,11 @@ numeric_poly_deserialize(PG_FUNCTION_ARGS)
accum_sum_add(&result->sumX, &sumX_var);
#endif
set_var_from_num(DatumGetNumeric(sumX2), &sumX2_var);
init_var_from_num(DatumGetNumeric(sumX2), &sumX2_var);
#ifdef HAVE_INT128
numericvar_to_int128(&sumX2_var, &result->sumX2);
#else
accum_sum_add(&result->sumX2, &sumX_var);
accum_sum_add(&result->sumX2, &sumX2_var);
#endif
pq_getmsgend(&buf);

Loading…
Cancel
Save