diff options
Diffstat (limited to 'src/backend/utils/adt/arrayutils.c')
-rw-r--r-- | src/backend/utils/adt/arrayutils.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/backend/utils/adt/arrayutils.c b/src/backend/utils/adt/arrayutils.c index c7355968d78..aab0639a6d4 100644 --- a/src/backend/utils/adt/arrayutils.c +++ b/src/backend/utils/adt/arrayutils.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/utils/adt/arrayutils.c,v 1.19 2005/11/17 22:14:52 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/arrayutils.c,v 1.20 2005/11/22 18:17:22 momjian Exp $ * *------------------------------------------------------------------------- */ @@ -82,7 +82,7 @@ ArrayGetNItems(int ndim, const int *dims) ret = 1; for (i = 0; i < ndim; i++) { - int64 prod; + int64 prod; /* A negative dimension implies that UB-LB overflowed ... */ if (dims[i] < 0) @@ -91,7 +91,8 @@ ArrayGetNItems(int ndim, const int *dims) errmsg("array size exceeds the maximum allowed (%d)", (int) MaxArraySize))); - prod = (int64) ret * (int64) dims[i]; + prod = (int64) ret *(int64) dims[i]; + ret = (int32) prod; if ((int64) ret != prod) ereport(ERROR, |