From 924a05dc505a9bcd94afe478aeb57f2e0006d90b Mon Sep 17 00:00:00 2001 From: Andreu Montiel Date: Fri, 19 Jun 2020 20:06:38 +0200 Subject: [PATCH] Fix gccdeps.scan() returning nodes that no longer exist on disk. --- waflib/extras/gccdeps.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/waflib/extras/gccdeps.py b/waflib/extras/gccdeps.py index c3a809e2..55cc2282 100644 --- a/waflib/extras/gccdeps.py +++ b/waflib/extras/gccdeps.py @@ -33,6 +33,8 @@ def scan(self): if not self.__class__.__name__ in self.env.ENABLE_GCCDEPS: return super(self.derived_gccdeps, self).scan() nodes = self.generator.bld.node_deps.get(self.uid(), []) + # It can happen that dependencies are renamed or removed. Prevent crash at Task.compute_sig_implicit_deps(). + nodes = [node for node in nodes if node.exists()] names = [] return (nodes, names)