[Soot-list] Spark Crash due to empty body

Bernhard Berger berber at tzi.de
Fri Mar 29 15:03:05 EDT 2013


Hi Marc-André,

can you check if the byte code of the method has a code attribute? The unit graph that is generated tries to get the first "statement" but there is none.

Bernhard

 
Am 29.03.2013 um 02:09 schrieb Marc-Andre Laverdiere-Papineau <marc-andre.laverdiere-papineau at polymtl.ca>:

> Hello everybody,
> 
> I have been messing a bit with my classpath today and I got this error 
> when running a different test case than the one I was working with:
> 
> Exception in thread "main" java.util.NoSuchElementException
> 	at soot.util.HashChain.getFirst(HashChain.java:316)
> 	at soot.PatchingChain.getFirst(PatchingChain.java:217)
> 	at soot.PatchingChain.getFirst(PatchingChain.java:40)
> 	at 
> soot.toolkits.graph.ExceptionalUnitGraph.buildHeadsAndTails(ExceptionalUnitGraph.java:761)
> 	at 
> soot.toolkits.graph.ExceptionalUnitGraph.initialize(ExceptionalUnitGraph.java:300)
> 	at 
> soot.toolkits.graph.ExceptionalUnitGraph.<init>(ExceptionalUnitGraph.java:165)
> 	at 
> soot.toolkits.scalar.LocalSplitter.internalTransform(LocalSplitter.java:91)
> 	at soot.BodyTransformer.transform(BodyTransformer.java:51)
> 	at soot.Transform.apply(Transform.java:104)
> 	at soot.JimpleBodyPack.applyPhaseOptions(JimpleBodyPack.java:57)
> 	at soot.JimpleBodyPack.internalApply(JimpleBodyPack.java:89)
> 	at soot.Pack.apply(Pack.java:124)
> 	at soot.jimple.JimpleMethodSource.getBody(JimpleMethodSource.java:49)
> 	at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:89)
> 	at soot.SootMethod.retrieveActiveBody(SootMethod.java:322)
> 	at 
> soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processNewMethod(OnFlyCallGraphBuilder.java:532)
> 	at 
> soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processReachables(OnFlyCallGraphBuilder.java:427)
> 	at soot.jimple.spark.solver.OnFlyCallGraph.build(OnFlyCallGraph.java:55)
> 	at 
> soot.jimple.spark.builder.ContextInsensitiveBuilder.build(ContextInsensitiveBuilder.java:77)
> 	at 
> soot.jimple.spark.SparkTransformer.internalTransform(SparkTransformer.java:84)
> 	at soot.SceneTransformer.transform(SceneTransformer.java:39)
> 	at soot.Transform.apply(Transform.java:89)
> 	at soot.RadioScenePack.internalApply(RadioScenePack.java:57)
> 	at 
> soot.jimple.toolkits.callgraph.CallGraphPack.internalApply(CallGraphPack.java:49)
> 	at soot.Pack.apply(Pack.java:114)
> 	at soot.PackManager.runWholeProgramPacks(PackManager.java:464)
> 	at soot.PackManager.runPacksNormally(PackManager.java:373)
> 	at soot.PackManager.runPacks(PackManager.java:339)
> 	at soot.Main.run(Main.java:198)
> 	at soot.Main.main(Main.java:141)
> 
> Did I do something silly, or that is a plain bug that needs a patch?
> 
> Regards,
> 
> -- 
> Marc-André Laverdière-Papineau
> Doctorant - PhD Candidate
> _______________________________________________
> Soot-list mailing list
> Soot-list at sable.mcgill.ca
> http://mailman.cs.mcgill.ca/mailman/listinfo/soot-list
> 
> 



More information about the Soot-list mailing list