From: Bruce Momjian Date: Tue, 23 Feb 2010 06:29:01 +0000 (+0000) Subject: Secondary patch to fix interval to_char() for "HH" where hours >= 12. X-Git-Tag: REL9_0_ALPHA5~219 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=4f56dc3fb4266565650542f2a8cb6babe4b46d11;p=postgresql Secondary patch to fix interval to_char() for "HH" where hours >= 12. --- diff --git a/src/backend/utils/adt/formatting.c b/src/backend/utils/adt/formatting.c index 1db285536f..a41f6f1496 100644 --- a/src/backend/utils/adt/formatting.c +++ b/src/backend/utils/adt/formatting.c @@ -1,7 +1,7 @@ /* ----------------------------------------------------------------------- * formatting.c * - * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.164 2010/02/23 01:42:19 momjian Exp $ + * $PostgreSQL: pgsql/src/backend/utils/adt/formatting.c,v 1.165 2010/02/23 06:29:01 momjian Exp $ * * * Portions Copyright (c) 1999-2010, PostgreSQL Global Development Group @@ -2089,7 +2089,8 @@ DCH_to_char(FormatNode *node, bool is_interval, TmToChar *in, char *out) case DCH_HH: case DCH_HH12: sprintf(s, "%0*d", S_FM(n->suffix) ? 0 : 2, - !is_interval && tm->tm_hour % (HOURS_PER_DAY / 2) == 0 ? + is_interval ? tm->tm_hour : + tm->tm_hour % (HOURS_PER_DAY / 2) == 0 ? 12 : tm->tm_hour % (HOURS_PER_DAY / 2)); if (S_THth(n->suffix)) str_numth(s, s, S_TH_TYPE(n->suffix));