yWorks / yGuard

The open-source Java obfuscation tool working with Ant and Gradle by yWorks - the diagramming experts

Home Page:https://yworks.github.io/yGuard/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Some file streams are not closed during shrinking

Fohlen opened this issue · comments

File stream of the following types are not closed during shrinking:

  • com.yworks.util.abstractjar.StreamProvider
  • com.yworks.yshrink.core.Writer.write
  • com.yworks.yshrink.core.Analyzer.visitAllClasses

This problem has been here before the 3.0.0 release and has only been identified during the release process. The result may potentially be many IO access requests and memory consumption. Reading from JAR files however will at the most open 2 streams. This situation changes with directory support. In order to properly solve this ticket an implementation needs to modify abstraction to add a close method to these classes and make sure they are called everywhere accordingly.

This ticket is currently rated at low priority. If you encounter problems in production that make this refactoring more pressing, please ammend this ticket.