Skip to content

Commit 8630452

Browse files
committed
do nothing on non-supported methods
1 parent 33ea505 commit 8630452

1 file changed

Lines changed: 6 additions & 6 deletions

File tree

soot-infoflow/src/soot/jimple/infoflow/taintWrappers/EasyTaintWrapper.java

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -187,11 +187,6 @@ public Set<AccessPath> getTaintsForMethodInternal(Stmt stmt, AccessPath taintedP
187187

188188
final SootMethod method = stmt.getInvokeExpr().getMethod();
189189

190-
// For the moment, we don't implement static taints on wrappers. Pass it on not
191-
// to break anything
192-
if (taintedPath.isStaticFieldRef())
193-
return Collections.singleton(taintedPath);
194-
195190
// Do we handle equals() and hashCode() separately?
196191
final String subSig = stmt.getInvokeExpr().getMethodRef().getSubSignature().getString();
197192
boolean taintEqualsHashCode = alwaysModelEqualsHashCode
@@ -214,6 +209,11 @@ public Set<AccessPath> getTaintsForMethodInternal(Stmt stmt, AccessPath taintedP
214209
if (!isSupported && !aggressiveMode && !taintEqualsHashCode)
215210
return null;
216211

212+
// For the moment, we don't implement static taints on wrappers. Pass it on not
213+
// to break anything
214+
if (taintedPath.isStaticFieldRef())
215+
return Collections.singleton(taintedPath);
216+
217217
final Set<AccessPath> taints = new HashSet<>();
218218

219219
// Check for a cached wrap type
@@ -225,7 +225,7 @@ public Set<AccessPath> getTaintsForMethodInternal(Stmt stmt, AccessPath taintedP
225225
// If the base object is tainted, we have to check whether we
226226
// must kill the taint
227227
if (wrapType == MethodWrapType.KillTaint)
228-
return Collections.emptySet();
228+
return null;
229229

230230
// If the base object is tainted, all calls to its methods
231231
// always return

0 commit comments

Comments
 (0)