summaryrefslogtreecommitdiff
path: root/lib/unistr/u-cpy.h
diff options
context:
space:
mode:
Diffstat (limited to 'lib/unistr/u-cpy.h')
-rw-r--r--lib/unistr/u-cpy.h28
1 files changed, 10 insertions, 18 deletions
diff --git a/lib/unistr/u-cpy.h b/lib/unistr/u-cpy.h
index 1bbb1f0c..f0b3bc85 100644
--- a/lib/unistr/u-cpy.h
+++ b/lib/unistr/u-cpy.h
@@ -1,25 +1,16 @@
/* Copy piece of UTF-8/UTF-16/UTF-32 string.
- Copyright (C) 1999, 2002, 2006, 2009-2018 Free Software Foundation, Inc.
+ Copyright (C) 1999, 2002, 2006, 2009-2022 Free Software Foundation, Inc.
Written by Bruno Haible <bruno@clisp.org>, 2002.
- This program is free software: you can redistribute it and/or
- modify it under the terms of either:
+ This file is free software: you can redistribute it and/or modify
+ it under the terms of the GNU Lesser General Public License as
+ published by the Free Software Foundation; either version 2.1 of the
+ License, or (at your option) any later version.
- * the GNU Lesser General Public License as published by the Free
- Software Foundation; either version 3 of the License, or (at your
- option) any later version.
-
- or
-
- * the GNU General Public License as published by the Free
- Software Foundation; either version 2 of the License, or (at your
- option) any later version.
-
- or both in parallel, as here.
- This program is distributed in the hope that it will be useful,
+ This file 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
- Lesser General Public License for more details.
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>. */
@@ -35,7 +26,8 @@ FUNC (UNIT *dest, const UNIT *src, size_t n)
for (; n > 0; n--)
*destptr++ = *src++;
#else
- memcpy ((char *) dest, (const char *) src, n * sizeof (UNIT));
+ if (n > 0)
+ memcpy ((char *) dest, (const char *) src, n * sizeof (UNIT));
#endif
return dest;
}