From: Michael Meskes Date: Tue, 24 Feb 2004 16:09:16 +0000 (+0000) Subject: - Corrected error handling in PGTYPEStimestamp_from_asc. X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/?a=commitdiff_plain;h=ec75293d3826167cf45ec625d71b54d5630d9b8d;p=users%2Fbernd%2Fpostgres.git - Corrected error handling in PGTYPEStimestamp_from_asc. - Set pgtypeslib version to 1.2. --- diff --git a/src/interfaces/ecpg/pgtypeslib/Makefile b/src/interfaces/ecpg/pgtypeslib/Makefile index a118787a4a..d128098eae 100644 --- a/src/interfaces/ecpg/pgtypeslib/Makefile +++ b/src/interfaces/ecpg/pgtypeslib/Makefile @@ -14,7 +14,7 @@ include $(top_builddir)/src/Makefile.global NAME= pgtypes SO_MAJOR_VERSION= 1 -SO_MINOR_VERSION= 1 +SO_MINOR_VERSION= 2 override CPPFLAGS := -I$(top_srcdir)/src/interfaces/ecpg/include -I$(top_srcdir)/src/include/utils -I$(libpq_srcdir) $(CPPFLAGS) $(THREAD_CPPFLAGS) SHLIB_LINK += -lm diff --git a/src/interfaces/ecpg/pgtypeslib/dt.h b/src/interfaces/ecpg/pgtypeslib/dt.h index 2cbc58984b..fa74a23f4b 100644 --- a/src/interfaces/ecpg/pgtypeslib/dt.h +++ b/src/interfaces/ecpg/pgtypeslib/dt.h @@ -298,7 +298,6 @@ int EncodeInterval(struct tm * tm, fsec_t fsec, int style, char *str); int tm2timestamp(struct tm *, fsec_t, int *, timestamp *); int DecodeUnits(int field, char *lowtoken, int *val); -bool ClearDateCache(bool, bool, bool); bool CheckDateTokenTables(void); diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c index ee7fa3b4f8..19146d03e1 100644 --- a/src/interfaces/ecpg/pgtypeslib/timestamp.c +++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c @@ -291,7 +291,6 @@ PGTYPEStimestamp_from_asc(char *str, char **endptr) char *realptr; char **ptr = (endptr != NULL) ? endptr : &realptr; - errno = 0; if (strlen(str) >= sizeof(lowstr)) { errno = PGTYPES_TS_BAD_TIMESTAMP; @@ -338,6 +337,8 @@ PGTYPEStimestamp_from_asc(char *str, char **endptr) /* AdjustTimestampForTypmod(&result, typmod); */ + /* Since it's difficult to test for noresult, make sure errno is 0 if no error occured. */ + errno = 0; return result; }