From: Bruno Haible Date: Sat, 27 Jun 2020 00:06:54 +0000 (+0200) Subject: areadlink-with-size: Set errno upon failure. X-Git-Tag: v1.0~3967 X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=4ee6e48dc61d5788199b7581ec9004488ba0c208;p=gnulib.git areadlink-with-size: Set errno upon failure. * lib/areadlink-with-size.c (areadlink_with_size): Set errno when malloc fails. * lib/areadlinkat-with-size.c (areadlinkat_with_size): Add comment. --- diff --git a/ChangeLog b/ChangeLog index a63a00bcf0..7372a6b37d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2020-06-26 Bruno Haible + + areadlink-with-size: Set errno upon failure. + * lib/areadlink-with-size.c (areadlink_with_size): Set errno when malloc + fails. + * lib/areadlinkat-with-size.c (areadlinkat_with_size): Add comment. + 2020-06-26 Bruno Haible copy-file: Shrink dependencies. diff --git a/lib/areadlink-with-size.c b/lib/areadlink-with-size.c index d1770091de..86ddd6089c 100644 --- a/lib/areadlink-with-size.c +++ b/lib/areadlink-with-size.c @@ -79,7 +79,10 @@ areadlink_with_size (char const *file, size_t size) { buf = buffer = malloc (buf_size); if (!buffer) - return NULL; + { + errno = ENOMEM; + return NULL; + } } r = readlink (file, buf, buf_size); diff --git a/lib/areadlinkat-with-size.c b/lib/areadlinkat-with-size.c index 142b9dc542..b41a5e0c4b 100644 --- a/lib/areadlinkat-with-size.c +++ b/lib/areadlinkat-with-size.c @@ -84,6 +84,8 @@ areadlinkat_with_size (int fd, char const *file, size_t size) { buf = buffer = malloc (buf_size); if (!buffer) + /* We can assume errno == ENOMEM here, since all platforms that have + readlinkat() have a POSIX compliant malloc(). */ return NULL; }