diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2022-07-28 10:47:33 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2022-07-28 10:47:33 +0300 |
commit | f53f64b7b9edaef8e413add322225dc33ebc8131 (patch) | |
tree | 80885434187ce270e4a3f8f43137364f73c9f060 /libmysqld | |
parent | d8c2eeeb5998a2a126eb63f1be8bbfb86c3c8693 (diff) | |
parent | f79cebb4d02a7b5151ac617bc762c3e094436562 (diff) | |
download | mariadb-git-f53f64b7b9edaef8e413add322225dc33ebc8131.tar.gz |
Merge 10.8 into 10.9
Diffstat (limited to 'libmysqld')
-rw-r--r-- | libmysqld/CMakeLists.txt | 3 | ||||
-rw-r--r-- | libmysqld/lib_sql.cc | 22 |
2 files changed, 13 insertions, 12 deletions
diff --git a/libmysqld/CMakeLists.txt b/libmysqld/CMakeLists.txt index 62325b12349..1e7991bb0b2 100644 --- a/libmysqld/CMakeLists.txt +++ b/libmysqld/CMakeLists.txt @@ -1,5 +1,5 @@ # Copyright (c) 2006, 2011, Oracle and/or its affiliates. -# Copyright (c) 2009, 2020, MariaDB Corporation +# Copyright (c) 2009, 2022, MariaDB Corporation # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -154,6 +154,7 @@ ENDIF() IF(TARGET libfmt) ADD_DEPENDENCIES(sql_embedded libfmt) ENDIF() +TARGET_LINK_LIBRARIES(sql_embedded LINK_PRIVATE tpool ${CRC32_LIBRARY}) # On Windows, static embedded server library is called mysqlserver.lib # On Unix, it is libmysqld.a diff --git a/libmysqld/lib_sql.cc b/libmysqld/lib_sql.cc index 5d78974c2d5..8cf4f6d4cf8 100644 --- a/libmysqld/lib_sql.cc +++ b/libmysqld/lib_sql.cc @@ -496,7 +496,7 @@ MYSQL_METHODS embedded_methods= char **copy_arguments(int argc, char **argv) { - uint length= 0; + size_t length= 0; char **from, **res, **end= argv+argc; for (from=argv ; from != end ; from++) @@ -1111,11 +1111,11 @@ bool Protocol_text::store_field_metadata(const THD * thd, client_field->flags= (uint16) server_field.flags; client_field->decimals= server_field.decimals; - client_field->db_length= strlen(client_field->db); - client_field->table_length= strlen(client_field->table); - client_field->name_length= strlen(client_field->name); - client_field->org_name_length= strlen(client_field->org_name); - client_field->org_table_length= strlen(client_field->org_table); + client_field->db_length= (uint)strlen(client_field->db); + client_field->table_length= (uint)strlen(client_field->table); + client_field->name_length= (uint)strlen(client_field->name); + client_field->org_name_length= (uint)strlen(client_field->org_name); + client_field->org_table_length= (uint)strlen(client_field->org_table); client_field->catalog= dup_str_aux(field_alloc, "def", 3, cs, thd_cs); client_field->catalog_length= 3; @@ -1389,12 +1389,12 @@ bool Protocol::net_store_data(const uchar *from, size_t length) if (!(field_buf= (char*) alloc_root(alloc, length + sizeof(uint) + 1))) return TRUE; - *(uint *)field_buf= length; + *(uint *)field_buf= (uint)length; *next_field= field_buf + sizeof(uint); memcpy((uchar*) *next_field, from, length); (*next_field)[length]= 0; if (next_mysql_field->max_length < length) - next_mysql_field->max_length=length; + next_mysql_field->max_length=(ulong)length; ++next_field; ++next_mysql_field; return FALSE; @@ -1404,7 +1404,7 @@ bool Protocol::net_store_data(const uchar *from, size_t length) bool Protocol::net_store_data_cs(const uchar *from, size_t length, CHARSET_INFO *from_cs, CHARSET_INFO *to_cs) { - uint conv_length= to_cs->mbmaxlen * length / from_cs->mbminlen; + size_t conv_length= length * to_cs->mbmaxlen / from_cs->mbminlen; uint dummy_error; char *field_buf; if (!thd->mysql) // bootstrap file handling @@ -1415,10 +1415,10 @@ bool Protocol::net_store_data_cs(const uchar *from, size_t length, *next_field= field_buf + sizeof(uint); length= copy_and_convert(*next_field, conv_length, to_cs, (const char*) from, length, from_cs, &dummy_error); - *(uint *) field_buf= length; + *(uint *) field_buf= (uint)length; (*next_field)[length]= 0; if (next_mysql_field->max_length < length) - next_mysql_field->max_length= length; + next_mysql_field->max_length= (ulong)length; ++next_field; ++next_mysql_field; return false; |