From 29eb648b65f55722fb5e4b3134a404670aebd391 Mon Sep 17 00:00:00 2001 From: Tobias Stoeckert Date: Mon, 29 Nov 2021 17:34:03 +0100 Subject: [PATCH] further exception avoidance --- .../jimple/infoflow/problems/BackwardsInfoflowProblem.java | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/soot-infoflow/src/soot/jimple/infoflow/problems/BackwardsInfoflowProblem.java b/soot-infoflow/src/soot/jimple/infoflow/problems/BackwardsInfoflowProblem.java index bf219619c..5d82e1aca 100644 --- a/soot-infoflow/src/soot/jimple/infoflow/problems/BackwardsInfoflowProblem.java +++ b/soot-infoflow/src/soot/jimple/infoflow/problems/BackwardsInfoflowProblem.java @@ -209,7 +209,10 @@ private Set computeAliases(final DefinitionStmt defStmt, Value left ArrayRef arrayRef = (ArrayRef) leftValue; newType = TypeUtils.buildArrayOrAddDimension(newType, arrayRef.getType().getArrayType()); } else if (defStmt.getRightOp() instanceof ArrayRef) { - newType = ((ArrayType) newType).getElementType(); + if (newType instanceof ArrayType) + newType = ((ArrayType) newType).getElementType(); + else + newType = null; } else { // Type check if (!manager.getTypeUtils().checkCast(source.getAccessPath(), leftValue.getType()))