]> granicus.if.org Git - postgresql/commitdiff
Fixed some bugs in Informix compat functions.
authorMichael Meskes <meskes@postgresql.org>
Thu, 17 Jul 2003 07:54:29 +0000 (07:54 +0000)
committerMichael Meskes <meskes@postgresql.org>
Thu, 17 Jul 2003 07:54:29 +0000 (07:54 +0000)
src/interfaces/ecpg/compatlib/informix.c
src/interfaces/ecpg/ecpglib/misc.c
src/interfaces/ecpg/pgtypeslib/datetime.c

index d60019f68f9e26da636c621c48458edb9e4dbb96..807349fd835c8fa1ab96c6015f8b2f36143073f4 100644 (file)
@@ -443,7 +443,12 @@ rtoday (Date *d)
 int
 rjulmdy (Date d, short mdy[3])
 {
-       PGTYPESdate_julmdy(d, (int *)mdy);
+       int mdy_int[3];
+       
+       PGTYPESdate_julmdy(d, mdy_int);
+       mdy[0] = (short)mdy_int[0];
+       mdy[1] = (short)mdy_int[1];
+       mdy[2] = (short)mdy_int[2];
        return 0;
 }
 
@@ -482,7 +487,12 @@ rfmtdate (Date d, char *fmt, char *str)
 int
 rmdyjul (short mdy[3], Date *d)
 {
-       PGTYPESdate_mdyjul((int *)mdy, d);
+       int mdy_int[3];
+
+       mdy_int[0] = mdy[0];
+       mdy_int[1] = mdy[1];
+       mdy_int[2] = mdy[2];
+       PGTYPESdate_mdyjul(mdy_int, d);
        return 0;
 }
 
index 6c9bd208c7b0d4e8b2a956b65e2d1146e7c30d97..b9e0c35d0ca4acbe416b390e21f131fe20f00834 100644 (file)
@@ -1,4 +1,4 @@
-/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.9 2003/07/01 12:40:51 meskes Exp $ */
+/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/ecpglib/misc.c,v 1.10 2003/07/17 07:54:29 meskes Exp $ */
 
 #define POSTGRES_ECPG_INTERNAL
 #include "postgres_fe.h"
@@ -308,7 +308,7 @@ ECPGset_informix_null(enum ECPGttype type, void *ptr)
 
 static bool _check(unsigned char *ptr, int length)
 {
-       for (;ptr[length] == 0xff && length >= 0; length --);
+       for (;ptr[--length] == 0xff && length >= 0; length --);
        if (length < 0) return true;
        return false;
 }
index d9ca8708734d15b8cffeb15360ea5904a14b2613..9e8becbda79034a035df5107e926a710981687d6 100644 (file)
@@ -101,9 +101,9 @@ PGTYPESdate_julmdy(Date jd, int* mdy)
        int y, m, d;
        
        j2date((int) jd, &y, &m, &d);
-       mdy[0] = (short int) m;
-       mdy[1] = (short int) d;
-       mdy[2] = (short int) y;
+       mdy[0] = m;
+       mdy[1] = d;
+       mdy[2] = y;
 }
 
 void