From a2961af30152270ab40b58271dd527f4e6a0c37d Mon Sep 17 00:00:00 2001
From: Andre Maroneze <andre.maroneze@cea.fr>
Date: Sun, 13 Feb 2022 11:37:19 +0100
Subject: [PATCH] [analysis-scripts] find-fun: better handling of broken
 symlinks

---
 share/analysis-scripts/find_fun.py | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/share/analysis-scripts/find_fun.py b/share/analysis-scripts/find_fun.py
index 2c01d43a3ba..c05fbb68af1 100755
--- a/share/analysis-scripts/find_fun.py
+++ b/share/analysis-scripts/find_fun.py
@@ -74,12 +74,15 @@ possible_declarators = []
 possible_definers = []
 re_fun = function_finder.prepare_re_specific_name(fname)
 for f in files:
-    found = function_finder.find_specific_name(re_fun, f)
-    if found:
-        if found == 1:
-            possible_declarators.append(f)
-        else:
-            possible_definers.append(f)
+    try:
+        found = function_finder.find_specific_name(re_fun, f)
+        if found:
+            if found == 1:
+                possible_declarators.append(f)
+            else:
+                possible_definers.append(f)
+    except OSError as e:
+        print(f"error opening '{f}' ({e.errno}, {e.strerror}), skipping file")
 
 def relative_path_to(start):
     return lambda p: os.path.relpath(p, start=start)
-- 
GitLab