88 *
99 *
1010 * IDENTIFICATION
11- * $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.193 2008/09/16 22:31:21 tgl Exp $
11+ * $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.194 2008/09/24 19:46:44 momjian Exp $
1212 *
1313 *-------------------------------------------------------------------------
1414 */
@@ -2888,7 +2888,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
28882888 {
28892889 case DTK_MICROSEC :
28902890#ifdef HAVE_INT64_TIMESTAMP
2891- * fsec += val + fval ;
2891+ * fsec += rint ( val + fval ) ;
28922892#else
28932893 * fsec += (val + fval ) * 1e-6 ;
28942894#endif
@@ -2897,7 +2897,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
28972897
28982898 case DTK_MILLISEC :
28992899#ifdef HAVE_INT64_TIMESTAMP
2900- * fsec += ( val + fval ) * 1000 ;
2900+ * fsec += rint (( val + fval ) * 1000 ) ;
29012901#else
29022902 * fsec += (val + fval ) * 1e-3 ;
29032903#endif
@@ -2907,7 +2907,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
29072907 case DTK_SECOND :
29082908 tm -> tm_sec += val ;
29092909#ifdef HAVE_INT64_TIMESTAMP
2910- * fsec += fval * 1000000 ;
2910+ * fsec += rint ( fval * 1000000 ) ;
29112911#else
29122912 * fsec += fval ;
29132913#endif
@@ -2932,7 +2932,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
29322932 sec = fval ;
29332933 tm -> tm_sec += sec ;
29342934#ifdef HAVE_INT64_TIMESTAMP
2935- * fsec += ( fval - sec ) * 1000000 ;
2935+ * fsec += rint (( fval - sec ) * 1000000 ) ;
29362936#else
29372937 * fsec += fval - sec ;
29382938#endif
@@ -2950,7 +2950,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
29502950 sec = fval ;
29512951 tm -> tm_sec += sec ;
29522952#ifdef HAVE_INT64_TIMESTAMP
2953- * fsec += ( fval - sec ) * 1000000 ;
2953+ * fsec += rint (( fval - sec ) * 1000000 ) ;
29542954#else
29552955 * fsec += fval - sec ;
29562956#endif
@@ -2969,7 +2969,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
29692969 sec = fval ;
29702970 tm -> tm_sec += sec ;
29712971#ifdef HAVE_INT64_TIMESTAMP
2972- * fsec += ( fval - sec ) * 1000000 ;
2972+ * fsec += rint (( fval - sec ) * 1000000 ) ;
29732973#else
29742974 * fsec += fval - sec ;
29752975#endif
@@ -2995,7 +2995,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
29952995 sec = fval ;
29962996 tm -> tm_sec += sec ;
29972997#ifdef HAVE_INT64_TIMESTAMP
2998- * fsec += ( fval - sec ) * 1000000 ;
2998+ * fsec += rint (( fval - sec ) * 1000000 ) ;
29992999#else
30003000 * fsec += fval - sec ;
30013001#endif
@@ -3022,7 +3022,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
30223022 sec = fval ;
30233023 tm -> tm_sec += sec ;
30243024#ifdef HAVE_INT64_TIMESTAMP
3025- * fsec += ( fval - sec ) * 1000000 ;
3025+ * fsec += rint (( fval - sec ) * 1000000 ) ;
30263026#else
30273027 * fsec += fval - sec ;
30283028#endif
0 commit comments