Backpatch to 8.1.X fix for to_timestamp() where "PM/AM" specification
authorBruce Momjian <[email protected]>
Mon, 4 Sep 2006 19:29:18 +0000 (19:29 +0000)
committerBruce Momjian <[email protected]>
Mon, 4 Sep 2006 19:29:18 +0000 (19:29 +0000)
was eating too much user input, producing incorrect results.

src/backend/utils/adt/formatting.c

index 96b99730dd86b35b5194365632058da9ad47ac32..6f616eafb942609d1f1686d880fc65b5f14cce06 100644 (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: