summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpatg@patrick-galbraiths-computer.local <>2004-11-12 15:56:25 -0800
committerpatg@patrick-galbraiths-computer.local <>2004-11-12 15:56:25 -0800
commit7df412160ad9fe8c350656cd9ed6dc01e9d565df (patch)
treed431ebbff8a72d8e8c79f066b2088b7463e4ca96
parent31493800d57aa70307d7ac2981424c8a67ec9480 (diff)
downloadmariadb-git-7df412160ad9fe8c350656cd9ed6dc01e9d565df.tar.gz
Needed for WL# 2094, MySQL Federated Storage Handler
sql_string.h: simple string method to drop last character of a string (also decrements str_length)
-rw-r--r--BitKeeper/etc/logging_ok1
-rw-r--r--sql/sql_string.h28
2 files changed, 29 insertions, 0 deletions
diff --git a/BitKeeper/etc/logging_ok b/BitKeeper/etc/logging_ok
index c35853e3258..84f6b60f4d9 100644
--- a/BitKeeper/etc/logging_ok
+++ b/BitKeeper/etc/logging_ok
@@ -156,6 +156,7 @@ nick@mysql.com
nick@nick.leippe.com
papa@gbichot.local
patg@krsna.patg.net
+patg@patrick-galbraiths-computer.local
paul@central.snake.net
paul@ice.local
paul@ice.snake.net
diff --git a/sql/sql_string.h b/sql/sql_string.h
index cb5b1fb25fd..2101db40f92 100644
--- a/sql/sql_string.h
+++ b/sql/sql_string.h
@@ -141,6 +141,34 @@ public:
bool set(longlong num, CHARSET_INFO *cs);
bool set(ulonglong num, CHARSET_INFO *cs);
bool set(double num,uint decimals, CHARSET_INFO *cs);
+
+ /*
+ PMG 2004.11.12
+ This is a method that works the same as perl's "chop". It simply
+ drops the last character of a string. This is useful in the case
+ of the federated storage handler where I'm building a unknown
+ number, list of values and fields to be used in a sql insert
+ statement to be run on the remote server, and have a comma after each.
+ When the list is complete, I "chop" off the trailing comma
+
+ ex.
+ String stringobj;
+ stringobj.append("VALUES ('foo', 'fi', 'fo',");
+ stringobj.chop();
+ stringobj.append(")");
+
+ In this case, the value of string was:
+
+ VALUES ('foo', 'fi', 'fo',
+ VALUES ('foo', 'fi', 'fo'
+ VALUES ('foo', 'fi', 'fo')
+
+ */
+ inline void chop()
+ {
+ Ptr[str_length--]= '\0';
+ }
+
inline void free()
{
if (alloced)