diff options
author | konstantin@mysql.com <> | 2005-07-14 15:14:40 +0400 |
---|---|---|
committer | konstantin@mysql.com <> | 2005-07-14 15:14:40 +0400 |
commit | d4df2660c62bef882a08841ee6834611f0e9dfeb (patch) | |
tree | d8cf4b0de900dce7fa5bf40c097e2e29149c33bb /sql | |
parent | 1b612b0006ab049af072749b7fc9afd2e2852152 (diff) | |
parent | 62b8e6fdd153c62a1143a65be5b3c84d37bef890 (diff) | |
download | mariadb-git-d4df2660c62bef882a08841ee6834611f0e9dfeb.tar.gz |
Merge bk-internal.mysql.com:/home/bk/mysql-4.1
into mysql.com:/opt/local/work/mysql-4.1-root
Diffstat (limited to 'sql')
-rw-r--r-- | sql/field.cc | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sql/field.cc b/sql/field.cc index 64d5babd159..39a99830b14 100644 --- a/sql/field.cc +++ b/sql/field.cc @@ -47,6 +47,8 @@ uchar Field_null::null[1]={1}; const char field_separator=','; #define DOUBLE_TO_STRING_CONVERSION_BUFFER_SIZE 320 +#define BLOB_PACK_LENGTH_TO_MAX_LENGH(arg) \ +((ulong) ((LL(1) << min(arg, 4) * 8) - LL(1))) /* Rules for merging different types of fields in UNION @@ -5445,7 +5447,7 @@ Field_blob::Field_blob(char *ptr_arg, uchar *null_ptr_arg, uchar null_bit_arg, enum utype unireg_check_arg, const char *field_name_arg, struct st_table *table_arg,uint blob_pack_length, CHARSET_INFO *cs) - :Field_str(ptr_arg, (1L << min(blob_pack_length,3)*8)-1L, + :Field_str(ptr_arg, BLOB_PACK_LENGTH_TO_MAX_LENGH(blob_pack_length), null_ptr_arg, null_bit_arg, unireg_check_arg, field_name_arg, table_arg, cs), packlength(blob_pack_length) |