Skip to content

ArrayIndexOutOfBoundsException while remapping mods for transform cache #482

Description

@unilock

Describe the crash

My very large modpack crashes during mod remapping while Quilt Loader (v0.29.3-beta.1) is preparing its transformation cache. The thrown exception provides very little information:

java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2
	at org.quiltmc.loader.impl.lib.tinyremapper.TinyRemapper.waitForAll(TinyRemapper.java:1229)
	at org.quiltmc.loader.impl.lib.tinyremapper.TinyRemapper.apply(TinyRemapper.java:967)
	at org.quiltmc.loader.impl.transformer.RuntimeModRemapper.remap0(RuntimeModRemapper.java:201)
	at org.quiltmc.loader.impl.transformer.RuntimeModRemapper.remap(RuntimeModRemapper.java:135)
	at org.quiltmc.loader.impl.transformer.TransformCache.<init>(TransformCache.java:158)
	at org.quiltmc.loader.impl.transformer.TransformCacheGenerator.generate(TransformCacheGenerator.java:45)
	at org.quiltmc.loader.impl.transformer.TransformCacheManager.writeTransformCache(TransformCacheManager.java:302)
	at org.quiltmc.loader.impl.transformer.TransformCacheManager.createTransformCache(TransformCacheManager.java:275)
	at org.quiltmc.loader.impl.transformer.TransformCacheManager.populateTransformBundle(TransformCacheManager.java:105)
	at org.quiltmc.loader.impl.QuiltLoaderImpl.setup(QuiltLoaderImpl.java:377)
	at org.quiltmc.loader.impl.QuiltLoaderImpl.load(QuiltLoaderImpl.java:306)
	at org.quiltmc.loader.impl.launch.knot.Knot.init(Knot.java:150)
	at org.quiltmc.loader.impl.launch.knot.Knot.launch(Knot.java:79)
	at org.quiltmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:28)
	at org.prismlauncher.launcher.impl.StandardLauncher.launch(StandardLauncher.java:105)
	at org.prismlauncher.EntryPoint.listen(EntryPoint.java:129)
	at org.prismlauncher.EntryPoint.main(EntryPoint.java:70)
Caused by: java.util.concurrent.ExecutionException: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2
	at java.base/java.util.concurrent.FutureTask.report(FutureTask.java:124)
	at java.base/java.util.concurrent.FutureTask.get(FutureTask.java:193)
	at org.quiltmc.loader.impl.lib.tinyremapper.TinyRemapper.waitForAll(TinyRemapper.java:1226)
	... 16 more
Caused by: java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2
	at org.quiltmc.loader.impl.lib.tinyremapper.AsmClassRemapper$AsmMethodRemapper.processLocals(AsmClassRemapper.java:344)
	at org.quiltmc.loader.impl.lib.tinyremapper.AsmClassRemapper$AsmMethodRemapper.visitEnd(AsmClassRemapper.java:310)
	at org.objectweb.asm.ClassReader.readMethod(ClassReader.java:1516)
	at org.objectweb.asm.ClassReader.accept(ClassReader.java:745)
	at org.objectweb.asm.ClassReader.accept(ClassReader.java:425)
	at org.quiltmc.loader.impl.lib.tinyremapper.TinyRemapper.apply(TinyRemapper.java:1132)
	at org.quiltmc.loader.impl.lib.tinyremapper.TinyRemapper.lambda$apply$5(TinyRemapper.java:963)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:545)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1090)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:614)
	at java.base/java.lang.Thread.run(Thread.java:1474)

I suspect some mod is doing something very strange to cause this issue, but I have no idea which mod it could be.

Which environment crashed?

Client

Logs

https://mclo.gs/vVL47Xl

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugsomething isn't working

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions