Skip to content

Commit a755e10

Browse files
committed
cs
1 parent 7209011 commit a755e10

1 file changed

Lines changed: 10 additions & 5 deletions

File tree

csharp/ql/lib/semmle/code/csharp/controlflow/ControlFlowGraph.qll

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -73,11 +73,16 @@ private module Ast implements AstSig<Location> {
7373
private AstNode getParent(AstNode n) { n = getChild(result, _) }
7474

7575
Callable getEnclosingCallable(AstNode node) {
76-
result = node.(ControlFlowElement).getEnclosingCallable() or
77-
result.(ObjectInitMethod).initializes(getParent*(node)) or
78-
Initializers::staticMemberInitializer(result, getParent*(node)) or
79-
result = node.(Parameter).getCallable() or
80-
node = any(Parameter p | result = p.getCallable()).getDefaultValue()
76+
result = node.(ControlFlowElement).getEnclosingCallable()
77+
or
78+
result.(ObjectInitMethod).initializes(getParent*(node))
79+
or
80+
Initializers::staticMemberInitializer(result, getParent*(node))
81+
or
82+
result = node.(Parameter).getCallable()
83+
or
84+
not skipControlFlow(node) and
85+
getParent*(node) = any(Parameter p | result = p.getCallable()).getDefaultValue()
8186
}
8287

8388
class Callable = CS::Callable;

0 commit comments

Comments
 (0)