summaryrefslogtreecommitdiff
path: root/sql/sql_string.cc
diff options
context:
space:
mode:
authorunknown <monty@mysql.com>2004-03-29 17:57:07 +0300
committerunknown <monty@mysql.com>2004-03-29 17:57:07 +0300
commit1cff3d98b361928e6b3fefb92069f6f1658d13c1 (patch)
tree99c0257fe8779ed78345d81aa4c907abe076bf82 /sql/sql_string.cc
parent4ac3ca69903b5955c3675102477669178213951c (diff)
downloadmariadb-git-1cff3d98b361928e6b3fefb92069f6f1658d13c1.tar.gz
Disable INSERT DELAYED for embedded library
sql-bench/crash-me.sh: Fixed typo sql/mysql_priv.h: Moved things for embedded library into one section sql/sql_string.cc: Simple optimization
Diffstat (limited to 'sql/sql_string.cc')
-rw-r--r--sql/sql_string.cc9
1 files changed, 7 insertions, 2 deletions
diff --git a/sql/sql_string.cc b/sql/sql_string.cc
index e15beac90b0..a4eae8a6346 100644
--- a/sql/sql_string.cc
+++ b/sql/sql_string.cc
@@ -794,10 +794,14 @@ copy_and_convert(char *to, uint32 to_length, CHARSET_INFO *to_cs,
const uchar *from_end= (const uchar*) from+from_length;
char *to_start= to;
uchar *to_end= (uchar*) to+to_length;
+ int (*mb_wc)(struct charset_info_st *, my_wc_t *, const uchar *,
+ const uchar *) = from_cs->cset->mb_wc;
+ int (*wc_mb)(struct charset_info_st *, my_wc_t, uchar *s, uchar *e)=
+ to_cs->cset->wc_mb;
while (1)
{
- if ((cnvres= from_cs->cset->mb_wc(from_cs, &wc, (uchar*) from,
+ if ((cnvres= (*mb_wc)(from_cs, &wc, (uchar*) from,
from_end)) > 0)
from+= cnvres;
else if (cnvres == MY_CS_ILSEQ)
@@ -809,7 +813,7 @@ copy_and_convert(char *to, uint32 to_length, CHARSET_INFO *to_cs,
break; // Impossible char.
outp:
- if ((cnvres= to_cs->cset->wc_mb(to_cs, wc, (uchar*) to, to_end)) > 0)
+ if ((cnvres= (*wc_mb)(to_cs, wc, (uchar*) to, to_end)) > 0)
to+= cnvres;
else if (cnvres == MY_CS_ILUNI && wc != '?')
{
@@ -822,6 +826,7 @@ outp:
return (uint32) (to - to_start);
}
+
void String::print(String *str)
{
char *st= (char*)Ptr, *end= st+str_length;