diff options
author | unknown <monty@donna.mysql.com> | 2001-02-20 22:34:47 +0200 |
---|---|---|
committer | unknown <monty@donna.mysql.com> | 2001-02-20 22:34:47 +0200 |
commit | 62884b8f36e2bdb7dffd43fe65b7ac17025e6abe (patch) | |
tree | f87e7ff2aa4e7016660a9275fe538c9ce99b6dfe /strings/strxnmov.c | |
parent | dc7eafea57a321c92716b5b84c574a0347ade74f (diff) | |
download | mariadb-git-62884b8f36e2bdb7dffd43fe65b7ac17025e6abe.tar.gz |
Added max_user_connections
Fixes for Innobase
Don't reset whole to-buffer in strxnmov
BUILD/compile-pentium-debug:
Added innobase
include/mysqld_error.h:
New error messages
innobase/configure.in:
Update from heikki
innobase/include/lock0types.h:
Update from heikki
innobase/include/os0sync.h:
Update from heikki
innobase/include/sync0types.h:
Update from heikki
innobase/os/os0file.c:
Update from heikki
innobase/srv/srv0start.c:
Update from heikki
sql/ha_innobase.cc:
Update from Heikki
Changed assert -> dbug_assert
Changed return -> DBUG_RETURN
sql/mysql_priv.h:
Added max_user_connections
sql/mysqld.cc:
Added max_user_connections
sql/share/czech/errmsg.txt:
Added max_user_connections
sql/share/danish/errmsg.txt:
Added max_user_connections
sql/share/dutch/errmsg.txt:
Added max_user_connections
sql/share/english/errmsg.txt:
Added max_user_connections
sql/share/estonian/errmsg.txt:
Added max_user_connections
sql/share/french/errmsg.txt:
Added max_user_connections
sql/share/german/errmsg.txt:
Added max_user_connections
sql/share/greek/errmsg.txt:
Added max_user_connections
sql/share/hungarian/errmsg.txt:
Added max_user_connections
sql/share/italian/errmsg.txt:
Added max_user_connections
sql/share/japanese/errmsg.txt:
Added max_user_connections
sql/share/korean/errmsg.txt:
Added max_user_connections
sql/share/norwegian-ny/errmsg.txt:
Added max_user_connections
sql/share/norwegian/errmsg.txt:
Added max_user_connections
sql/share/polish/errmsg.txt:
Added max_user_connections
sql/share/portuguese/errmsg.txt:
Added max_user_connections
sql/share/romanian/errmsg.txt:
Added max_user_connections
sql/share/russian/errmsg.txt:
Added max_user_connections
sql/share/slovak/errmsg.txt:
Added max_user_connections
sql/share/spanish/errmsg.txt:
Added max_user_connections
sql/share/swedish/errmsg.OLD:
Added max_user_connections
sql/share/swedish/errmsg.txt:
Added max_user_connections
sql/sql_class.h:
cleanup
strings/str_test.c:
Added tests for strxnmov
strings/strxnmov.c:
Don't reset whole to buffer
Diffstat (limited to 'strings/strxnmov.c')
-rw-r--r-- | strings/strxnmov.c | 24 |
1 files changed, 13 insertions, 11 deletions
diff --git a/strings/strxnmov.c b/strings/strxnmov.c index 494b227209f..b55a2e0ab79 100644 --- a/strings/strxnmov.c +++ b/strings/strxnmov.c @@ -15,9 +15,9 @@ and NOT to use 0, as on some machines 0 is not the same size as a character pointer, or not the same bit pattern as NullS. - Note: strxnmov is like strnmov in that it always moves EXACTLY len - characters; dst will be padded on the right with NUL characters as - needed. strxncpy does the same. strxncat, like strncat, does NOT. + Note: strxnmov is like strnmov in that it moves up to len + characters; dst will be padded on the right with one NUL characters if + needed. */ #include <global.h> @@ -27,20 +27,22 @@ char *strxnmov(char *dst,uint len, const char *src, ...) { va_list pvar; - char *result; + char *end_of_dst=dst+len; va_start(pvar,src); - while (src != NullS) { - do if (len-- == 0) + while (src != NullS) + { + do { - va_end(pvar); - return dst; + if (dst == end_of_dst) + goto end; } - while ((*dst++ = *src++) != 0); + while ((*dst++ = *src++)); dst--; src = va_arg(pvar, char *); } - for (result= dst; len-- != 0; *dst++ = 0) ; + *dst=0; +end: va_end(pvar); - return result; + return dst; } |