Mercurial > gnulib
comparison lib/uniconv/u8-conv-to-enc.c @ 40212:8da9577294da
unistr/*, uniconv/*: Fix undefined behaviour.
Reported by Jeffrey Walton <noloader@gmail.com>.
* lib/unistr/u-cpy.h (FUNC): Don't invoke memcpy with a zero size.
* lib/unistr/u-cpy-alloc.h (FUNC): Likewise.
* lib/uniconv/u8-conv-from-enc.c (u8_conv_from_encoding): Likewise.
* lib/uniconv/u8-conv-to-enc.c (u8_conv_to_encoding): Likewise.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 09 Mar 2019 00:01:47 +0100 |
parents | b06060465f09 |
children |
comparison
equal
deleted
inserted
replaced
40211:5f58d2ac35ea | 40212:8da9577294da |
---|---|
58 errno = ENOMEM; | 58 errno = ENOMEM; |
59 return NULL; | 59 return NULL; |
60 } | 60 } |
61 } | 61 } |
62 | 62 |
63 memcpy (result, (const char *) src, srclen); | 63 if (srclen > 0) |
64 memcpy (result, (const char *) src, srclen); | |
64 *lengthp = srclen; | 65 *lengthp = srclen; |
65 return result; | 66 return result; |
66 } | 67 } |
67 else | 68 else |
68 { | 69 { |