[PATCH 6/7] libdwfl: Return failure from dwfl_standard_find_debuginfo for NULL module.

Mark Wielaard mark@klomp.org
Sun May 10 19:53:39 GMT 2020


GCC10 -fanalyzer plus -flto notices that some functions called by
dwfl_standard_find_debuginfo check that the given module isn't NULL,
but others expect it to be non-NULL. Just return a failure immediately
when a NULL mod is passed to dwfl_standard_find_debuginfo.

Signed-off-by: Mark Wielaard <mark@klomp.org>
---
 libdwfl/ChangeLog        | 5 +++++
 libdwfl/find-debuginfo.c | 3 +++
 2 files changed, 8 insertions(+)

diff --git a/libdwfl/ChangeLog b/libdwfl/ChangeLog
index 05d5bd4a..4f1ec9da 100644
--- a/libdwfl/ChangeLog
+++ b/libdwfl/ChangeLog
@@ -1,3 +1,8 @@
+2020-05-09  Mark Wielaard  <mark@klomp.org>
+
+	* find-debuginfo.c (dwfl_standard_find_debuginfo): Return failure
+	when mod is NULL.
+
 2020-05-08  Mark Wielaard  <mark@klomp.org>
 
 	* libdwfl/core-file.c (dwfl_core_file_report): Keep track of
diff --git a/libdwfl/find-debuginfo.c b/libdwfl/find-debuginfo.c
index 4cfd0b8b..eb68d549 100644
--- a/libdwfl/find-debuginfo.c
+++ b/libdwfl/find-debuginfo.c
@@ -355,6 +355,9 @@ dwfl_standard_find_debuginfo (Dwfl_Module *mod,
 			      GElf_Word debuglink_crc,
 			      char **debuginfo_file_name)
 {
+  if (mod == NULL)
+    return -1;
+
   /* First try by build ID if we have one.  If that succeeds or fails
      other than just by finding nothing, that's all we do.  */
   const unsigned char *bits = NULL;
-- 
2.20.1



More information about the Elfutils-devel mailing list