diff options
author | Sergey Petrunya <psergey@askmonty.org> | 2009-09-08 00:50:10 +0400 |
---|---|---|
committer | Sergey Petrunya <psergey@askmonty.org> | 2009-09-08 00:50:10 +0400 |
commit | dac8bb7f8a095e39f24b414b9ceb0cf463863acc (patch) | |
tree | 84935c21dc958724ae7dcbeeca0c0f08986fc430 /sql/sql_string.h | |
parent | 52c86aa1fe02dc204b0a194b163662d2f5508b96 (diff) | |
parent | 8aea2dcca750e2e271ead60216965f327e989673 (diff) | |
download | mariadb-git-dac8bb7f8a095e39f24b414b9ceb0cf463863acc.tar.gz |
Merge MySQL->MariaDBmariadb-merge-mysql-5.1.38minus
* Finished Monty and Jani's merge
* Some InnoDB tests still fail (because it's old xtradb code run against
newer testsuite). They are expected to go after mergning with the latest
xtradb.
Diffstat (limited to 'sql/sql_string.h')
-rw-r--r-- | sql/sql_string.h | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/sql/sql_string.h b/sql/sql_string.h index 9088863ac4d..9e22f7b6a27 100644 --- a/sql/sql_string.h +++ b/sql/sql_string.h @@ -40,6 +40,9 @@ uint32 well_formed_copy_nchars(CHARSET_INFO *to_cs, size_t my_copy_with_hex_escaping(CHARSET_INFO *cs, char *dst, size_t dstlen, const char *src, size_t srclen); +uint convert_to_printable(char *to, size_t to_len, + const char *from, size_t from_len, + CHARSET_INFO *from_cs, size_t nbytes= 0); class String { @@ -371,6 +374,19 @@ public: { return (s->alloced && Ptr >= s->Ptr && Ptr < s->Ptr + s->str_length); } + bool is_ascii() const + { + if (length() == 0) + return TRUE; + if (charset()->mbminlen > 1) + return FALSE; + for (const char *c= ptr(), *end= c + length(); c < end; c++) + { + if (!my_isascii(*c)) + return FALSE; + } + return TRUE; + } }; static inline bool check_if_only_end_space(CHARSET_INFO *cs, char *str, |