Fix an ancient typo that prevented the detection of conflicting fields when
authorTom Lane <tgl@sss.pgh.pa.us>
Mon, 2 Aug 2010 01:24:54 +0000 (01:24 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Mon, 2 Aug 2010 01:24:54 +0000 (01:24 +0000)
interval input "invalid" was specified together with other fields.  Spotted
by Neil Conway with the help of a clang warning.  Although this has been
wrong since the interval code was written more than 10 years ago, it doesn't
affect anything beyond which error message you get for a wrong input, so not
worth back-patching very far.

src/backend/utils/adt/datetime.c
src/interfaces/ecpg/pgtypeslib/interval.c

index 65d2b875f0794108aabaf96993786c9f88bee65c..713a87df3c1a2fc7c0083e0f909e906c263ed2c1 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *   $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.212 2010/05/09 02:15:59 tgl Exp $
+ *   $PostgreSQL: pgsql/src/backend/utils/adt/datetime.c,v 1.213 2010/08/02 01:24:53 tgl Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -3098,7 +3098,7 @@ DecodeInterval(char **field, int *ftype, int nf, int range,
                        break;
 
                    case RESERV:
-                       tmask = (DTK_DATE_M || DTK_TIME_M);
+                       tmask = (DTK_DATE_M | DTK_TIME_M);
                        *dtype = val;
                        break;
 
index b9894d7ffc8f4320d6a2d3faf433b4abd9f4d3cd..47fb936a1809820aae1e6329f7f866fea00d213b 100644 (file)
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/pgtypeslib/interval.c,v 1.42 2009/09/03 09:59:20 meskes Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/pgtypeslib/interval.c,v 1.43 2010/08/02 01:24:54 tgl Exp $ */
 
 #include "postgres_fe.h"
 #include <time.h>
@@ -606,7 +606,7 @@ DecodeInterval(char **field, int *ftype, int nf,        /* int range, */
                        break;
 
                    case RESERV:
-                       tmask = (DTK_DATE_M || DTK_TIME_M);
+                       tmask = (DTK_DATE_M | DTK_TIME_M);
                        *dtype = val;
                        break;