diff --git a/python/ql/src/experimental/dataflow/internal/DataFlowPrivate.qll b/python/ql/src/experimental/dataflow/internal/DataFlowPrivate.qll index efdd05b7729..3f9762bbf83 100644 --- a/python/ql/src/experimental/dataflow/internal/DataFlowPrivate.qll +++ b/python/ql/src/experimental/dataflow/internal/DataFlowPrivate.qll @@ -521,8 +521,11 @@ predicate jumpStep(Node nodeFrom, Node nodeTo) { private predicate module_export(Module m, string name, CfgNode defn) { exists(EssaVariable v | v.getName() = name and - v.getAUse() = m.getANormalExit() and + v.getAUse() = m.getANormalExit() + | defn.getNode() = v.getDefinition().(AssignmentDefinition).getValue() + or + defn.getNode() = v.getDefinition().(ArgumentRefinement).getArgument() ) } diff --git a/python/ql/test/experimental/dataflow/typetracking/test.py b/python/ql/test/experimental/dataflow/typetracking/test.py index 53de5eef13a..6fbf4cfabb1 100644 --- a/python/ql/test/experimental/dataflow/typetracking/test.py +++ b/python/ql/test/experimental/dataflow/typetracking/test.py @@ -54,7 +54,7 @@ def test_import(): mymodule.x # $tracked y = mymodule.func() # $tracked y # $tracked - mymodule.z # $f-:tracked + mymodule.z # $tracked # ------------------------------------------------------------------------------