File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change 5
5
*
6
6
* 1998 Jan Wieck
7
7
*
8
- * $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.6 1999/01/04 11:20:33 wieck Exp $
8
+ * $Header: /cvsroot/pgsql/src/backend/utils/adt/numeric.c,v 1.7 1999/01/04 12:53:23 wieck Exp $
9
9
*
10
10
* ----------
11
11
*/
@@ -2377,7 +2377,7 @@ apply_typmod(NumericVar *var, int32 typmod)
2377
2377
}
2378
2378
2379
2379
i = scale + var -> weight + 1 ;
2380
- if (var -> ndigits > i )
2380
+ if (i >= 0 && var -> ndigits > i )
2381
2381
{
2382
2382
long carry = (var -> digits [i ] > 4 ) ? 1 : 0 ;
2383
2383
@@ -2396,6 +2396,10 @@ apply_typmod(NumericVar *var, int32 typmod)
2396
2396
var -> weight ++ ;
2397
2397
}
2398
2398
}
2399
+ else
2400
+ {
2401
+ var -> ndigits = MAX (0 , MIN (i , var -> ndigits ));
2402
+ }
2399
2403
2400
2404
var -> rscale = scale ;
2401
2405
var -> dscale = scale ;
You can’t perform that action at this time.
0 commit comments