summaryrefslogtreecommitdiff
path: root/sql/field.h
diff options
context:
space:
mode:
authorunknown <dlenev@mysql.com>2005-01-18 17:23:46 +0300
committerunknown <dlenev@mysql.com>2005-01-18 17:23:46 +0300
commit9474fed704746c18d3422cf16ecd6a4747392cb1 (patch)
tree55c727ead8d3c184256e00000bc6452f5a2b26d4 /sql/field.h
parentcd89ed9ab6ae511581471b1aaa640fadc3819f63 (diff)
parent9ed0d855502adec04e088d2f6f1b3bf58dca44d5 (diff)
downloadmariadb-git-9474fed704746c18d3422cf16ecd6a4747392cb1.tar.gz
Manual merge of fix for bug #7884 "Able to add invalid unique index on
TIMESTAMP prefix" into 4.1 tree. sql/field.h: Manual merge.
Diffstat (limited to 'sql/field.h')
-rw-r--r--sql/field.h14
1 files changed, 7 insertions, 7 deletions
diff --git a/sql/field.h b/sql/field.h
index bb999222381..27a01a69273 100644
--- a/sql/field.h
+++ b/sql/field.h
@@ -1275,10 +1275,10 @@ bool test_if_int(const char *str, int length, const char *int_end,
#define FIELDFLAG_NUMBER 2
#define FIELDFLAG_ZEROFILL 4
#define FIELDFLAG_PACK 120 // Bits used for packing
-#define FIELDFLAG_INTERVAL 256
-#define FIELDFLAG_BITFIELD 512 // mangled with dec!
-#define FIELDFLAG_BLOB 1024 // mangled with dec!
-#define FIELDFLAG_GEOM 2048
+#define FIELDFLAG_INTERVAL 256 // mangled with decimals!
+#define FIELDFLAG_BITFIELD 512 // mangled with decimals!
+#define FIELDFLAG_BLOB 1024 // mangled with decimals!
+#define FIELDFLAG_GEOM 2048 // mangled with decimals!
#define FIELDFLAG_LEFT_FULLSCREEN 8192
#define FIELDFLAG_RIGHT_FULLSCREEN 16384
@@ -1303,10 +1303,10 @@ bool test_if_int(const char *str, int length, const char *int_end,
#define f_decimals(x) ((uint8) (((x) >> FIELDFLAG_DEC_SHIFT) & FIELDFLAG_MAX_DEC))
#define f_is_alpha(x) (!f_is_num(x))
#define f_is_binary(x) ((x) & FIELDFLAG_BINARY) // 4.0- compatibility
-#define f_is_enum(x) ((x) & FIELDFLAG_INTERVAL)
-#define f_is_bitfield(x) ((x) & FIELDFLAG_BITFIELD)
+#define f_is_enum(x) (((x) & (FIELDFLAG_INTERVAL | FIELDFLAG_NUMBER)) == FIELDFLAG_INTERVAL)
+#define f_is_bitfield(x) (((x) & (FIELDFLAG_BITFIELD | FIELDFLAG_NUMBER)) == FIELDFLAG_BITFIELD)
#define f_is_blob(x) (((x) & (FIELDFLAG_BLOB | FIELDFLAG_NUMBER)) == FIELDFLAG_BLOB)
-#define f_is_geom(x) ((x) & FIELDFLAG_GEOM)
+#define f_is_geom(x) (((x) & (FIELDFLAG_GEOM | FIELDFLAG_NUMBER)) == FIELDFLAG_GEOM)
#define f_is_equ(x) ((x) & (1+2+FIELDFLAG_PACK+31*256))
#define f_settype(x) (((int) x) << FIELDFLAG_PACK_SHIFT)
#define f_maybe_null(x) (x & FIELDFLAG_MAYBE_NULL)