From d8bba112d21f7b2a481c83f95c078a1a895b5ec1 Mon Sep 17 00:00:00 2001 From: Paul Eggert Date: Sun, 1 Aug 2021 17:29:26 -0700 Subject: [PATCH] dirname: improve -fanalyzer malloc checking --- ChangeLog | 2 +- lib/dirname.h | 12 +++++++++--- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/ChangeLog b/ChangeLog index d7740df528..8844434386 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,7 +2,7 @@ maint: improve -fanalyzer malloc checking * lib/backup-internal.h, lib/backupfile.h: - * lib/canonicalize.h, lib/dfa.h: + * lib/canonicalize.h, lib/dfa.h, lib/dirname.h: Add malloc-related attributes and include stdlib.h as needed. * lib/dfa.c: Include verify.h. (assume_nonnull): New macro. diff --git a/lib/dirname.h b/lib/dirname.h index 492a4381fc..04f823eca0 100644 --- a/lib/dirname.h +++ b/lib/dirname.h @@ -21,6 +21,7 @@ # include # include +# include # include "filename.h" # include "basename-lgpl.h" @@ -33,11 +34,16 @@ extern "C" { #endif # if GNULIB_DIRNAME -char *base_name (char const *file) _GL_ATTRIBUTE_MALLOC; -char *dir_name (char const *file); +char *base_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; +char *dir_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE + _GL_ATTRIBUTE_RETURNS_NONNULL; # endif -char *mdir_name (char const *file); +char *mdir_name (char const *file) + _GL_ATTRIBUTE_MALLOC _GL_ATTRIBUTE_DEALLOC_FREE; size_t dir_len (char const *file) _GL_ATTRIBUTE_PURE; bool strip_trailing_slashes (char *file); -- 2.39.5