diff --git a/meta/lib/oe/spdx_common.py b/meta/lib/oe/spdx_common.py
index 6b1a409c40..d09f749d0e 100644
--- a/meta/lib/oe/spdx_common.py
+++ b/meta/lib/oe/spdx_common.py
@@ -124,7 +124,7 @@ def collect_direct_deps(d, dep_task):
         dep_data = taskdepdata[dep_name]
         if dep_data.taskname == dep_task and dep_data.pn != pn:
             deps.add(
-                Dep(dep_data.pn, dep_data.hashfn, dep_name in this_dep.taskhash_deps)
+                Dep(dep_data.pn, dep_data.hashfn, this_dep.taskhash_deps and (p_name in this_dep.taskhash_deps))
             )
 
     return sorted(deps)
