diff options
Diffstat (limited to 'dev-db/mysql-workbench/files/mysql-workbench-6.3.9-mariadb-json.patch')
| -rw-r--r-- | dev-db/mysql-workbench/files/mysql-workbench-6.3.9-mariadb-json.patch | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/dev-db/mysql-workbench/files/mysql-workbench-6.3.9-mariadb-json.patch b/dev-db/mysql-workbench/files/mysql-workbench-6.3.9-mariadb-json.patch new file mode 100644 index 000000000000..74c84e374dc7 --- /dev/null +++ b/dev-db/mysql-workbench/files/mysql-workbench-6.3.9-mariadb-json.patch @@ -0,0 +1,55 @@ +--- a/plugins/migration/copytable/copytable.cpp.~1~ 2017-02-03 19:40:18.000000000 +0100 ++++ b/plugins/migration/copytable/copytable.cpp 2017-05-21 17:23:14.135875375 +0200 +@@ -109,8 +109,10 @@ + return "MYSQL_TYPE_STRING"; + case MYSQL_TYPE_GEOMETRY: + return "MYSQL_TYPE_GEOMETRY"; ++#ifndef MARIADB_BASE_VERSION + case MYSQL_TYPE_JSON: + return "MYSQL_TYPE_JSON"; ++#endif + default: + return "UNKNOWN"; + } +@@ -295,7 +297,9 @@ + case MYSQL_TYPE_STRING: + case MYSQL_TYPE_VAR_STRING: + case MYSQL_TYPE_BIT: ++#ifndef MARIADB_BASE_VERSION + case MYSQL_TYPE_JSON: ++#endif + if (!col->is_long_data) + bind.buffer_length = (unsigned)col->source_length + 1; + +@@ -1392,7 +1396,11 @@ + rowbuffer[index].buffer_type == MYSQL_TYPE_MEDIUM_BLOB || + rowbuffer[index].buffer_type == MYSQL_TYPE_LONG_BLOB || rowbuffer[index].buffer_type == MYSQL_TYPE_BLOB || + rowbuffer[index].buffer_type == MYSQL_TYPE_STRING || +- rowbuffer[index].buffer_type == MYSQL_TYPE_GEOMETRY || rowbuffer[index].buffer_type == MYSQL_TYPE_JSON) { ++ rowbuffer[index].buffer_type == MYSQL_TYPE_GEOMETRY ++#ifndef MARIADB_BASE_VERSION ++ || rowbuffer[index].buffer_type == MYSQL_TYPE_JSON ++#endif ++ ) { + if (rowbuffer[index].buffer_length) + free(rowbuffer[index].buffer); + +@@ -2162,7 +2170,9 @@ + case MYSQL_TYPE_STRING: + case MYSQL_TYPE_ENUM: + case MYSQL_TYPE_SET: ++#ifndef MARIADB_BASE_VERSION + case MYSQL_TYPE_JSON: ++#endif + _bulk_insert_record.append("'", 1); + ret_val = _bulk_insert_record.append_escaped((char *)(*_row_buffer)[col_index].buffer, + *(*_row_buffer)[col_index].length); +@@ -2621,7 +2621,7 @@ + // This is needed because the escaping depends on the character set in use by the server + unsigned long ret_length = 0; + +-#if MYSQL_CHECK_VERSION(5, 7, 6) ++#if MYSQL_CHECK_VERSION(5, 7, 6) && ! defined MARIADB_BASE_VERSION + if (_target->is_mysql_version_at_least(5, 7, 6)) + ret_length += mysql_real_escape_string_quote(_mysql, buffer + length, data, (unsigned long)dlength, '"'); + else |
