mirror of
https://github.com/MariaDB/server.git
synced 2025-07-27 18:02:13 +03:00
fix gcc 8 compiler warnings
There were two newly enabled warnings: 1. cast for a function pointers. Affected sql_analyse.h, mi_write.c and ma_write.cc, mf_iocache-t.cc, mysqlbinlog.cc, encryption.cc, etc 2. memcpy/memset of nontrivial structures. Fixed as: * the warning disabled for InnoDB * TABLE, TABLE_SHARE, and TABLE_LIST got a new method reset() which does the bzero(), which is safe for these classes, but any other bzero() will still cause a warning * Table_scope_and_contents_source_st uses `TABLE_LIST *` (trivial) instead of `SQL_I_List<TABLE_LIST>` (not trivial) so it's safe to bzero now. * added casts in debug_sync.cc and sql_select.cc (for JOIN) * move assignment method for MDL_request instead of memcpy() * PARTIAL_INDEX_INTERSECT_INFO::init() instead of bzero() * remove constructor from READ_RECORD() to make it trivial * replace some memcpy() with c++ copy assignments
This commit is contained in:
@ -4319,14 +4319,12 @@ select_create::binlog_show_create_table(TABLE **tables, uint count)
|
||||
DBUG_ASSERT(thd->is_current_stmt_binlog_format_row());
|
||||
DBUG_ASSERT(tables && *tables && count > 0);
|
||||
|
||||
char buf[2048];
|
||||
String query(buf, sizeof(buf), system_charset_info);
|
||||
StringBuffer<2048> query(system_charset_info);
|
||||
int result;
|
||||
TABLE_LIST tmp_table_list;
|
||||
|
||||
memset(&tmp_table_list, 0, sizeof(tmp_table_list));
|
||||
tmp_table_list.reset();
|
||||
tmp_table_list.table = *tables;
|
||||
query.length(0); // Have to zero it since constructor doesn't
|
||||
|
||||
result= show_create_table(thd, &tmp_table_list, &query,
|
||||
create_info, WITH_DB_NAME);
|
||||
|
Reference in New Issue
Block a user