Skip to content

SrgToMcpRenamer uses hardcoded path for nested jars #14

@Su5eD

Description

@Su5eD

The Issue

Currently, only nested jars under the META-INF/jarjar/ directory are deobfuscated by SrgToMcpRenamer.

processors.add(new ZipEntryProcessor(ein -> ein.getName().startsWith("META-INF/jarjar/") && ein.getName().endsWith(".jar"),

While this is the most common folder for nested jars, JarJar metadata defines nested jar paths as paths relative to the outer jar's root, and therefore nested jars can be located anywhere in the jar. This breaks mods that place their nested jars in other paths than the mentioned folder.

Expected behavior

SrgToMcpRenamer is able to deobfuscate any nested jars regardless of their location, as specified by JarJar metadata. Rather than assuming all nested jars are in the META-INF/jarjar/ directory, we should open the jar's JarJar metadata file and read nested jar paths from it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions