Skip to content

Commit 5d55db1

Browse files
committed
Python: Exceptions.qll: Updates handledObject to use getOrigin
1 parent 787b80f commit 5d55db1

File tree

1 file changed

+7
-1
lines changed

1 file changed

+7
-1
lines changed

python/ql/src/semmle/python/types/Exceptions.qll

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ class ExceptFlowNode extends ControlFlowNode {
276276
or
277277
exists(TupleValue tup |
278278
this.handledObject(tup, ClassValue::tuple(), _) |
279-
val = tup.getItem(_) and origin.pointsTo(val)
279+
element_from_tuple(tup).pointsTo(val,origin)
280280
)
281281
)
282282
}
@@ -317,6 +317,12 @@ private ControlFlowNode element_from_tuple_objectapi(Object tuple) {
317317
)
318318
}
319319

320+
private ControlFlowNode element_from_tuple(Value tuple) {
321+
exists(Tuple t |
322+
t = tuple.getOrigin() and result = t.getAnElt().getAFlowNode()
323+
)
324+
}
325+
320326
/** A Reraising node is the node at the end of a finally block (on the exceptional branch)
321327
* that reraises the current exception.
322328
*/

0 commit comments

Comments
 (0)