From 02840d1ba3ff75b5ada58807f69e0bff73b9599c Mon Sep 17 00:00:00 2001 From: unknown Date: Fri, 12 Nov 2004 15:56:25 -0800 Subject: [PATCH] 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) sql/sql_string.h: simple string method to drop last character of a string (also decrements str_length) BitKeeper/etc/logging_ok: Logging to logging@openlogging.org accepted --- BitKeeper/etc/logging_ok | 1 + sql/sql_string.h | 28 ++++++++++++++++++++++++++++ 2 files changed, 29 insertions(+) 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)