3915 Manish Kumar 2012-06-28
BUG#14116625 - GTID CODE: MAKE SKIP_WHITESPACE() MACRO USE MY_ISSPACE
Problem : Gtid functions print out this (though its just a print,does not
cause any server crash)
Version: '5.6.6-m9-debug' socket: '' port: 3306 MySQL
Community Server (GPL)
<file_location>\isctype.c(56) :
Assertion failed: (unsigned)(c + 1) <= 256
on executing : do gtid_subset((0xf3),('98@12@31 1130^45'));
Problem is that on windows 0xf3 is getting extended to 0xfffffff3
on using the windows isspace() function giving the parse_error.
Fix : The problem is fixed by using the my_isspace() instead of
isspace() to solve the problem.
modified:
sql/rpl_gtid.h
sql/rpl_gtid_misc.cc
sql/rpl_gtid_set.cc
3914 Joerg Bruehe 2012-06-28
Fix nickname.
modified:
.bzr-mysql/default.conf
=== modified file 'sql/rpl_gtid.h'
--- a/sql/rpl_gtid.h 2012-03-27 08:43:25 +0000
+++ b/sql/rpl_gtid.h 2012-06-28 11:11:58 +0000
@@ -47,6 +47,11 @@
#include "lf.h"
#include "my_atomic.h"
+/**
+ This macro is used to check that the given character, pointed to by the
+ character pointer, is a space or not.
+*/
+#define SKIP_WHITESPACE() while (my_isspace(&my_charset_utf8_general_ci, *s)) s++
/*
This macro must be used to filter out parts of the code that
is not used now but may be useful in future. In other words,
=== modified file 'sql/rpl_gtid_misc.cc'
--- a/sql/rpl_gtid_misc.cc 2012-02-08 13:42:28 +0000
+++ b/sql/rpl_gtid_misc.cc 2012-06-28 11:11:58 +0000
@@ -39,7 +39,6 @@ Gtid_state gtid_state(&global_sid_lock,
enum_return_status Gtid::parse(Sid_map *sid_map, const char *text)
{
-#define SKIP_WHITESPACE() while (isspace(*s)) s++
DBUG_ENTER("Gtid::parse");
rpl_sid sid;
const char *s= text;
=== modified file 'sql/rpl_gtid_set.cc'
--- a/sql/rpl_gtid_set.cc 2012-03-27 08:43:25 +0000
+++ b/sql/rpl_gtid_set.cc 2012-06-28 11:11:58 +0000
@@ -407,7 +407,6 @@ int format_gno(char *s, rpl_gno gno)
enum_return_status Gtid_set::add_gtid_text(const char *text, bool *anonymous)
{
-#define SKIP_WHITESPACE() while (isspace(*s)) s++
DBUG_ENTER("Gtid_set::add_gtid_text(const char *, bool *)");
DBUG_ASSERT(sid_map != NULL);
if (sid_lock != NULL)
No bundle (reason: useless for push emails).
| Thread |
|---|
| • bzr push into mysql-5.6 branch (manish.4.kumar:3914 to 3915) Bug#14116625 | Manish Kumar | 29 Jun |