We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent e3a5ac2 commit c185579Copy full SHA for c185579
src/backend/utils/adt/numeric.c
@@ -5,7 +5,7 @@
5
*
6
* 1998 Jan Wieck
7
8
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.6 1999/01/04 11:20:33 wieck Exp $
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.7 1999/01/04 12:53:23 wieck Exp $
9
10
* ----------
11
*/
@@ -2377,7 +2377,7 @@ apply_typmod(NumericVar *var, int32 typmod)
2377
}
2378
2379
i = scale + var->weight + 1;
2380
- if (var->ndigits > i)
+ if (i >= 0 && var->ndigits > i)
2381
{
2382
long carry = (var->digits[i] > 4) ? 1 : 0;
2383
@@ -2396,6 +2396,10 @@ apply_typmod(NumericVar *var, int32 typmod)
2396
var->weight++;
2397
2398
2399
+ else
2400
+ {
2401
+ var->ndigits = MAX(0, MIN(i, var->ndigits));
2402
+ }
2403
2404
var->rscale = scale;
2405
var->dscale = scale;
0 commit comments