1
0
mirror of https://github.com/postgres/postgres.git synced 2025-08-19 23:22:23 +03:00

- Added Dave patch for Informix handling of numeric/int conversion.

- Changed all new datatypes to lowercase.
- Fixed rounding bug in numerical types.
This commit is contained in:
Michael Meskes
2003-09-09 10:46:42 +00:00
parent fd65be4a78
commit fcdf0e22fc
22 changed files with 239 additions and 241 deletions

View File

@@ -1,4 +1,4 @@
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.14 2003/08/08 13:17:58 petere Exp $ */
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.15 2003/09/09 10:46:37 meskes Exp $ */
#define POSTGRES_ECPG_INTERNAL
#include "postgres_fe.h"
@@ -294,18 +294,18 @@ ECPGset_informix_null(enum ECPGttype type, void *ptr)
*(((struct ECPGgeneric_varchar *) ptr)->arr) = 0x00;
break;
case ECPGt_decimal:
memset((char *) ptr, 0, sizeof(Decimal));
((Decimal *) ptr)->sign = NUMERIC_NAN;
memset((char *) ptr, 0, sizeof(decimal));
((decimal *) ptr)->sign = NUMERIC_NAN;
break;
case ECPGt_numeric:
memset((char *) ptr, 0, sizeof(Numeric));
((Numeric *) ptr)->sign = NUMERIC_NAN;
memset((char *) ptr, 0, sizeof(numeric));
((numeric *) ptr)->sign = NUMERIC_NAN;
break;
case ECPGt_interval:
memset((char *) ptr, 0xff, sizeof(Interval));
memset((char *) ptr, 0xff, sizeof(interval));
break;
case ECPGt_timestamp:
memset((char *) ptr, 0xff, sizeof(Timestamp));
memset((char *) ptr, 0xff, sizeof(timestamp));
break;
default:
break;
@@ -365,18 +365,18 @@ ECPGis_informix_null(enum ECPGttype type, void *ptr)
return true;
break;
case ECPGt_decimal:
if (((Decimal *) ptr)->sign == NUMERIC_NAN)
if (((decimal *) ptr)->sign == NUMERIC_NAN)
return true;
break;
case ECPGt_numeric:
if (((Numeric *) ptr)->sign == NUMERIC_NAN)
if (((numeric *) ptr)->sign == NUMERIC_NAN)
return true;
break;
case ECPGt_interval:
return (_check(ptr, sizeof(Interval)));
return (_check(ptr, sizeof(interval)));
break;
case ECPGt_timestamp:
return (_check(ptr, sizeof(Timestamp)));
return (_check(ptr, sizeof(timestamp)));
break;
default:
break;