Backpatch to 8.1.X fix for to_timestamp() where "PM/AM" specification

was eating too much user input, producing incorrect results.
This commit is contained in:
Bruce Momjian 2006-09-04 19:29:18 +00:00
parent 1e64862ab3
commit e73687f2ec

View File

@ -1,7 +1,7 @@
/* -----------------------------------------------------------------------
* formatting.c
*
* $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.101.2.2 2005/12/03 16:45:23 momjian Exp $
* $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.101.2.3 2006/09/04 19:29:18 momjian Exp $
*
*
* Portions Copyright (c) 1999-2005, PostgreSQL Global Development Group
@ -1740,7 +1740,7 @@ dch_time(int arg, char *inout, int suf, bool is_to_char, bool is_interval,
tmfc->am = TRUE;
else
AMPM_ERROR;
return strlen(p_inout);
return strlen(P_M_STR);
}
break;
case DCH_AM:
@ -1759,7 +1759,7 @@ dch_time(int arg, char *inout, int suf, bool is_to_char, bool is_interval,
tmfc->am = TRUE;
else
AMPM_ERROR;
return strlen(p_inout);
return strlen(PM_STR);
}
break;
case DCH_a_m:
@ -1778,7 +1778,7 @@ dch_time(int arg, char *inout, int suf, bool is_to_char, bool is_interval,
tmfc->am = TRUE;
else
AMPM_ERROR;
return strlen(p_inout);
return strlen(p_m_STR);
}
break;
case DCH_am:
@ -1797,7 +1797,7 @@ dch_time(int arg, char *inout, int suf, bool is_to_char, bool is_interval,
tmfc->am = TRUE;
else
AMPM_ERROR;
return strlen(p_inout);
return strlen(pm_STR);
}
break;
case DCH_HH: