Skip to content

9.1.7

Latest
Compare
Choose a tag to compare
@piazzesiNiccolo-GS piazzesiNiccolo-GS released this 12 Dec 10:20
· 5 commits to master since this release

Bugfixes

  • Make sure injected initialization methods in interfaces have the correct access flags.

Improved

  • InstructionSequenceMatcher now supports matching of primitive array constants.
  • Support propagation of extra specified taints in JvmTaintTransferRelation.
  • Introduce ReflectiveModel and ReflectiveModelExecutor to simplify the creation and analysis of Models.

API improvements

  • Rename CallVisitor to CallHandler and add extra parameters to handle calls accounting for more data.
  • Add ClassUtil.isClassInitializer(String) and ClassUtil.isInstanceInitializer(String).
  • Extend MemberCollectionFilter to accept a Set of any subtype of Member.

API changes

  • Move classes related to Model to the proguard.evaluation.value.object.model package.
  • StringSharer now uses a string pool to share strings, instead of traversing references.

API changes for the dataflow analysis code

There are several changes to the dataflow analysis code with the objective of eliminating unnecessary abstraction and
make its usage easier. This includes:

  • Remove MemoryLocation, use JvmMemoryLocation instead.
  • Make JvmMemoryLocation independent of the type of value contained in the analysis' state. The type of the value now needs only to be provided when calling extractValueOrDefault.
  • Remove all code related to the tree heap model for taint analysis.