From 600dc4c0da3b8c094ccc1ae75b47c8320898c714 Mon Sep 17 00:00:00 2001 From: Tom Lane <tgl@sss.pgh.pa.us> Date: Sat, 3 Sep 2016 14:18:55 -0400 Subject: [PATCH] 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> --- src/backend/utils/adt/numeric.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/backend/utils/adt/numeric.c b/src/backend/utils/adt/numeric.c index 27efd310abb..384e672c832 100644 --- a/src/backend/utils/adt/numeric.c +++ b/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); -- GitLab