aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/interfaces/ecpg/pgtypeslib/dt.h6
-rw-r--r--src/interfaces/ecpg/pgtypeslib/dt_common.c15
-rw-r--r--src/interfaces/ecpg/pgtypeslib/interval.c16
-rw-r--r--src/interfaces/ecpg/pgtypeslib/timestamp.c8
4 files changed, 15 insertions, 30 deletions
diff --git a/src/interfaces/ecpg/pgtypeslib/dt.h b/src/interfaces/ecpg/pgtypeslib/dt.h
index 5a192ddc453..8cf03bfedfb 100644
--- a/src/interfaces/ecpg/pgtypeslib/dt.h
+++ b/src/interfaces/ecpg/pgtypeslib/dt.h
@@ -313,12 +313,12 @@ do { \
int DecodeInterval(char **, int *, int, int *, struct tm *, fsec_t *);
int DecodeTime(char *, int *, struct tm *, fsec_t *);
-int EncodeDateTime(struct tm *tm, fsec_t fsec, bool print_tz, int tz, const char *tzn, int style, char *str, bool EuroDates);
-int EncodeInterval(struct tm *tm, fsec_t fsec, int style, char *str);
+void EncodeDateTime(struct tm *tm, fsec_t fsec, bool print_tz, int tz, const char *tzn, int style, char *str, bool EuroDates);
+void 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 CheckDateTokenTables(void);
-int EncodeDateOnly(struct tm *tm, int style, char *str, bool EuroDates);
+void EncodeDateOnly(struct tm *tm, int style, char *str, bool EuroDates);
int GetEpochTime(struct tm *);
int ParseDateTime(char *, char *, char **, int *, int *, char **);
int DecodeDateTime(char **, int *, int, int *, struct tm *, fsec_t *, bool);
diff --git a/src/interfaces/ecpg/pgtypeslib/dt_common.c b/src/interfaces/ecpg/pgtypeslib/dt_common.c
index a26d61b32cd..59b69d917bc 100644
--- a/src/interfaces/ecpg/pgtypeslib/dt_common.c
+++ b/src/interfaces/ecpg/pgtypeslib/dt_common.c
@@ -671,11 +671,10 @@ DecodeSpecial(int field, char *lowtoken, int *val)
/* EncodeDateOnly()
* Encode date as local time.
*/
-int
+void
EncodeDateOnly(struct tm *tm, int style, char *str, bool EuroDates)
{
- if (tm->tm_mon < 1 || tm->tm_mon > MONTHS_PER_YEAR)
- return -1;
+ Assert(tm->tm_mon >= 1 && tm->tm_mon <= MONTHS_PER_YEAR);
switch (style)
{
@@ -723,9 +722,7 @@ EncodeDateOnly(struct tm *tm, int style, char *str, bool EuroDates)
sprintf(str + 5, "-%04d %s", -(tm->tm_year - 1), "BC");
break;
}
-
- return TRUE;
-} /* EncodeDateOnly() */
+}
void
TrimTrailingZeros(char *str)
@@ -758,7 +755,7 @@ TrimTrailingZeros(char *str)
* US - mm/dd/yyyy
* European - dd/mm/yyyy
*/
-int
+void
EncodeDateTime(struct tm *tm, fsec_t fsec, bool print_tz, int tz, const char *tzn, int style, char *str, bool EuroDates)
{
int day,
@@ -951,9 +948,7 @@ EncodeDateTime(struct tm *tm, fsec_t fsec, bool print_tz, int tz, const char *tz
}
break;
}
-
- return TRUE;
-} /* EncodeDateTime() */
+}
int
GetEpochTime(struct tm *tm)
diff --git a/src/interfaces/ecpg/pgtypeslib/interval.c b/src/interfaces/ecpg/pgtypeslib/interval.c
index 30f2ccbcb77..4a7227e926c 100644
--- a/src/interfaces/ecpg/pgtypeslib/interval.c
+++ b/src/interfaces/ecpg/pgtypeslib/interval.c
@@ -331,8 +331,6 @@ DecodeISO8601Interval(char *str,
* * ECPG semes not to have a global IntervalStyle
* so added
* int IntervalStyle = INTSTYLE_POSTGRES;
- *
- * * Assert wasn't available so removed it.
*/
int
DecodeInterval(char **field, int *ftype, int nf, /* int range, */
@@ -374,7 +372,7 @@ DecodeInterval(char **field, int *ftype, int nf, /* int range, */
* least one digit; there could be ':', '.', '-' embedded in
* it as well.
*/
- /* Assert(*field[i] == '-' || *field[i] == '+'); */
+ Assert(*field[i] == '-' || *field[i] == '+');
/*
* Try for hh:mm or hh:mm:ss. If not, fall through to
@@ -771,7 +769,7 @@ AppendSeconds(char *cp, int sec, fsec_t fsec, int precision, bool fillzeros)
* Change pg_tm to tm
*/
-int
+void
EncodeInterval(struct /* pg_ */ tm *tm, fsec_t fsec, int style, char *str)
{
char *cp = str;
@@ -947,9 +945,7 @@ EncodeInterval(struct /* pg_ */ tm *tm, fsec_t fsec, int style, char *str)
strcat(cp, " ago");
break;
}
-
- return 0;
-} /* EncodeInterval() */
+}
/* interval2tm()
@@ -1091,11 +1087,7 @@ PGTYPESinterval_to_asc(interval * span)
return NULL;
}
- if (EncodeInterval(tm, fsec, IntervalStyle, buf) != 0)
- {
- errno = PGTYPES_INTVL_BAD_INTERVAL;
- return NULL;
- }
+ EncodeInterval(tm, fsec, IntervalStyle, buf);
return pgtypes_strdup(buf);
}
diff --git a/src/interfaces/ecpg/pgtypeslib/timestamp.c b/src/interfaces/ecpg/pgtypeslib/timestamp.c
index fa5b32ed9da..b63880dc55d 100644
--- a/src/interfaces/ecpg/pgtypeslib/timestamp.c
+++ b/src/interfaces/ecpg/pgtypeslib/timestamp.c
@@ -192,7 +192,7 @@ timestamp2tm(timestamp dt, int *tzp, struct tm *tm, fsec_t *fsec, const char **t
/* EncodeSpecialTimestamp()
* * Convert reserved timestamp data type to string.
* */
-static int
+static void
EncodeSpecialTimestamp(timestamp dt, char *str)
{
if (TIMESTAMP_IS_NOBEGIN(dt))
@@ -200,10 +200,8 @@ EncodeSpecialTimestamp(timestamp dt, char *str)
else if (TIMESTAMP_IS_NOEND(dt))
strcpy(str, LATE);
else
- return FALSE;
-
- return TRUE;
-} /* EncodeSpecialTimestamp() */
+ abort(); /* shouldn't happen */
+}
timestamp
PGTYPEStimestamp_from_asc(char *str, char **endptr)