@@ -10167,8 +10167,7 @@ Field *make_field(TABLE_SHARE *share, uchar *ptr, uint32 field_length,
1016710167 Field::geometry_type geom_type,
1016810168 Field::utype unireg_check,
1016910169 TYPELIB *interval,
10170- const char *field_name,
10171- MEM_ROOT *mem_root /* default= NULL */ )
10170+ const char *field_name)
1017210171{
1017310172 uchar *UNINIT_VAR (bit_ptr);
1017410173 uchar UNINIT_VAR (bit_offset);
@@ -10203,8 +10202,6 @@ Field *make_field(TABLE_SHARE *share, uchar *ptr, uint32 field_length,
1020310202 FLAGSTR (pack_flag, FIELDFLAG_NUMBER),
1020410203 FLAGSTR (pack_flag, FIELDFLAG_PACK),
1020510204 FLAGSTR (pack_flag, FIELDFLAG_BLOB)));
10206- if (mem_root == NULL )
10207- mem_root= current_thd->mem_root ;
1020810205
1020910206 if (f_is_alpha (pack_flag))
1021010207 {
@@ -10213,11 +10210,11 @@ Field *make_field(TABLE_SHARE *share, uchar *ptr, uint32 field_length,
1021310210 if (field_type == MYSQL_TYPE_STRING ||
1021410211 field_type == MYSQL_TYPE_DECIMAL || // 3.23 or 4.0 string
1021510212 field_type == MYSQL_TYPE_VAR_STRING)
10216- return new (mem_root) Field_string (ptr,field_length,null_pos,null_bit,
10213+ return new Field_string (ptr,field_length,null_pos,null_bit,
1021710214 unireg_check, field_name,
1021810215 field_charset);
1021910216 if (field_type == MYSQL_TYPE_VARCHAR)
10220- return new (mem_root) Field_varstring (ptr,field_length,
10217+ return new Field_varstring (ptr,field_length,
1022110218 HA_VARCHAR_PACKLENGTH (field_length),
1022210219 null_pos,null_bit,
1022310220 unireg_check, field_name,
@@ -10232,115 +10229,115 @@ Field *make_field(TABLE_SHARE *share, uchar *ptr, uint32 field_length,
1023210229
1023310230#ifdef HAVE_SPATIAL
1023410231 if (f_is_geom (pack_flag))
10235- return new (mem_root) Field_geom (ptr,null_pos,null_bit,
10232+ return new Field_geom (ptr,null_pos,null_bit,
1023610233 unireg_check, field_name, share,
1023710234 pack_length, geom_type);
1023810235#endif
1023910236 if (f_is_blob (pack_flag))
10240- return new (mem_root) Field_blob (ptr,null_pos,null_bit,
10237+ return new Field_blob (ptr,null_pos,null_bit,
1024110238 unireg_check, field_name, share,
1024210239 pack_length, field_charset);
1024310240 if (interval)
1024410241 {
1024510242 if (f_is_enum (pack_flag))
10246- return new (mem_root) Field_enum (ptr,field_length,null_pos,null_bit,
10243+ return new Field_enum (ptr,field_length,null_pos,null_bit,
1024710244 unireg_check, field_name,
1024810245 pack_length, interval, field_charset);
1024910246 else
10250- return new (mem_root) Field_set (ptr,field_length,null_pos,null_bit,
10247+ return new Field_set (ptr,field_length,null_pos,null_bit,
1025110248 unireg_check, field_name,
1025210249 pack_length, interval, field_charset);
1025310250 }
1025410251 }
1025510252
1025610253 switch (field_type) {
1025710254 case MYSQL_TYPE_DECIMAL:
10258- return new (mem_root) Field_decimal (ptr,field_length,null_pos,null_bit,
10255+ return new Field_decimal (ptr,field_length,null_pos,null_bit,
1025910256 unireg_check, field_name,
1026010257 f_decimals (pack_flag),
1026110258 f_is_zerofill (pack_flag) != 0 ,
1026210259 f_is_dec (pack_flag) == 0 );
1026310260 case MYSQL_TYPE_NEWDECIMAL:
10264- return new (mem_root) Field_new_decimal (ptr,field_length,null_pos,null_bit,
10261+ return new Field_new_decimal (ptr,field_length,null_pos,null_bit,
1026510262 unireg_check, field_name,
1026610263 f_decimals (pack_flag),
1026710264 f_is_zerofill (pack_flag) != 0 ,
1026810265 f_is_dec (pack_flag) == 0 );
1026910266 case MYSQL_TYPE_FLOAT:
10270- return new (mem_root) Field_float (ptr,field_length,null_pos,null_bit,
10267+ return new Field_float (ptr,field_length,null_pos,null_bit,
1027110268 unireg_check, field_name,
1027210269 f_decimals (pack_flag),
1027310270 f_is_zerofill (pack_flag) != 0 ,
1027410271 f_is_dec (pack_flag)== 0 );
1027510272 case MYSQL_TYPE_DOUBLE:
10276- return new (mem_root) Field_double (ptr,field_length,null_pos,null_bit,
10273+ return new Field_double (ptr,field_length,null_pos,null_bit,
1027710274 unireg_check, field_name,
1027810275 f_decimals (pack_flag),
1027910276 f_is_zerofill (pack_flag) != 0 ,
1028010277 f_is_dec (pack_flag)== 0 );
1028110278 case MYSQL_TYPE_TINY:
10282- return new (mem_root) Field_tiny (ptr,field_length,null_pos,null_bit,
10279+ return new Field_tiny (ptr,field_length,null_pos,null_bit,
1028310280 unireg_check, field_name,
1028410281 f_is_zerofill (pack_flag) != 0 ,
1028510282 f_is_dec (pack_flag) == 0 );
1028610283 case MYSQL_TYPE_SHORT:
10287- return new (mem_root) Field_short (ptr,field_length,null_pos,null_bit,
10284+ return new Field_short (ptr,field_length,null_pos,null_bit,
1028810285 unireg_check, field_name,
1028910286 f_is_zerofill (pack_flag) != 0 ,
1029010287 f_is_dec (pack_flag) == 0 );
1029110288 case MYSQL_TYPE_INT24:
10292- return new (mem_root) Field_medium (ptr,field_length,null_pos,null_bit,
10289+ return new Field_medium (ptr,field_length,null_pos,null_bit,
1029310290 unireg_check, field_name,
1029410291 f_is_zerofill (pack_flag) != 0 ,
1029510292 f_is_dec (pack_flag) == 0 );
1029610293 case MYSQL_TYPE_LONG:
10297- return new (mem_root) Field_long (ptr,field_length,null_pos,null_bit,
10294+ return new Field_long (ptr,field_length,null_pos,null_bit,
1029810295 unireg_check, field_name,
1029910296 f_is_zerofill (pack_flag) != 0 ,
1030010297 f_is_dec (pack_flag) == 0 );
1030110298 case MYSQL_TYPE_LONGLONG:
10302- return new (mem_root) Field_longlong (ptr,field_length,null_pos,null_bit,
10299+ return new Field_longlong (ptr,field_length,null_pos,null_bit,
1030310300 unireg_check, field_name,
1030410301 f_is_zerofill (pack_flag) != 0 ,
1030510302 f_is_dec (pack_flag) == 0 );
1030610303 case MYSQL_TYPE_TIMESTAMP:
10307- return new (mem_root) Field_timestamp (ptr, field_length, null_pos, null_bit,
10304+ return new Field_timestamp (ptr, field_length, null_pos, null_bit,
1030810305 unireg_check, field_name);
1030910306 case MYSQL_TYPE_TIMESTAMP2:
10310- return new (mem_root) Field_timestampf (ptr, null_pos, null_bit,
10307+ return new Field_timestampf (ptr, null_pos, null_bit,
1031110308 unireg_check, field_name,
1031210309 field_length > MAX_DATETIME_WIDTH ?
1031310310 field_length - 1 - MAX_DATETIME_WIDTH : 0 );
1031410311 case MYSQL_TYPE_YEAR:
10315- return new (mem_root) Field_year (ptr,field_length,null_pos,null_bit,
10312+ return new Field_year (ptr,field_length,null_pos,null_bit,
1031610313 unireg_check, field_name);
1031710314 case MYSQL_TYPE_NEWDATE:
10318- return new (mem_root) Field_newdate (ptr, null_pos, null_bit, unireg_check, field_name);
10315+ return new Field_newdate (ptr, null_pos, null_bit, unireg_check, field_name);
1031910316
1032010317 case MYSQL_TYPE_TIME:
10321- return new (mem_root) Field_time (ptr, null_pos, null_bit,
10318+ return new Field_time (ptr, null_pos, null_bit,
1032210319 unireg_check, field_name);
1032310320 case MYSQL_TYPE_TIME2:
10324- return new (mem_root) Field_timef (ptr, null_pos, null_bit,
10321+ return new Field_timef (ptr, null_pos, null_bit,
1032510322 unireg_check, field_name,
1032610323 (field_length > MAX_TIME_WIDTH) ?
1032710324 field_length - 1 - MAX_TIME_WIDTH : 0 );
1032810325 case MYSQL_TYPE_DATETIME:
10329- return new (mem_root) Field_datetime (ptr, null_pos, null_bit,
10326+ return new Field_datetime (ptr, null_pos, null_bit,
1033010327 unireg_check, field_name);
1033110328 case MYSQL_TYPE_DATETIME2:
10332- return new (mem_root) Field_datetimef (ptr, null_pos, null_bit,
10329+ return new Field_datetimef (ptr, null_pos, null_bit,
1033310330 unireg_check, field_name,
1033410331 (field_length > MAX_DATETIME_WIDTH) ?
1033510332 field_length - 1 - MAX_DATETIME_WIDTH : 0 );
1033610333 case MYSQL_TYPE_NULL:
10337- return new (mem_root) Field_null (ptr, field_length, unireg_check, field_name,
10334+ return new Field_null (ptr, field_length, unireg_check, field_name,
1033810335 field_charset);
1033910336 case MYSQL_TYPE_BIT:
1034010337 return f_bit_as_char (pack_flag) ?
10341- new (mem_root) Field_bit_as_char (ptr, field_length, null_pos, null_bit,
10338+ new Field_bit_as_char (ptr, field_length, null_pos, null_bit,
1034210339 unireg_check, field_name) :
10343- new (mem_root) Field_bit (ptr, field_length, null_pos, null_bit, bit_ptr,
10340+ new Field_bit (ptr, field_length, null_pos, null_bit, bit_ptr,
1034410341 bit_offset, unireg_check, field_name);
1034510342
1034610343 default : // Impossible (Wrong version)
0 commit comments