/* Copyright (C) 2000 MySQL AB This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /* my_stpncpy(dst,src,length) moves length characters, or until end, of src to dst and appends a closing NUL to dst if src is shorter than length. The result is a pointer to the first NUL in dst, or is dst+n if dst was truncated. */ #include "m_string.h" char *my_stpncpy(register char *dst, register const char *src, size_t n) { while (n-- != 0) { if (!(*dst++ = *src++)) { return (char*) dst-1; } } return dst; }