<div dir="ltr">Hi Steven,<div><br></div><div>It works now. Thank you so much for fixing this problem!</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Feb 26, 2015 at 10:26 AM, Steven Arzt <span dir="ltr">&lt;<a href="mailto:Steven.Arzt@cased.de" target="_blank">Steven.Arzt@cased.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="DE" link="blue" vlink="purple"><div><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Hi Peter,<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">That issue should be fixed now. Please update Soot.<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">Best regards,<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d">  Steven<u></u><u></u></span></p><p class="MsoNormal"><span lang="EN-US" style="font-size:11.0pt;font-family:&quot;Calibri&quot;,&quot;sans-serif&quot;;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">Von:</span></b><span lang="EN-US" style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;"> <a href="mailto:soot-list-bounces@CS.McGill.CA" target="_blank">soot-list-bounces@CS.McGill.CA</a> [mailto:<a href="mailto:soot-list-bounces@CS.McGill.CA" target="_blank">soot-list-bounces@CS.McGill.CA</a>] <b>Im Auftrag von </b>Pet</span><span style="font-size:10.0pt;font-family:&quot;Tahoma&quot;,&quot;sans-serif&quot;">er Kim<br><b>Gesendet:</b> Donnerstag, 26. Februar 2015 02:29<br><b>An:</b> Xinxin Jin<br><b>Cc:</b> <a href="mailto:soot-list@cs.mcgill.ca" target="_blank">soot-list@cs.mcgill.ca</a><br><b>Betreff:</b> Re: [Soot-list] (no subject)<u></u><u></u></span></p><div><div class="h5"><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">I am just running FlowDroid in the standard way, with the first argument as &quot;freegemas-android.apk&quot; and second argument as &quot;android.jar&quot;. BUT the jimple body is correct (RefType) when I use the stub android.jar, and incorrect (bottom_type) when I use the full android.jar (<a href="http://repository.grepcode.com/java/ext/com/google/android/android/4.4.2_r1/android-4.4.2_r1.jar" target="_blank">http://repository.grepcode.com/java/ext/com/google/android/android/4.4.2_r1/android-4.4.2_r1.jar</a>):<u></u><u></u></p><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">&lt;CORRECT Jimple when using stub android.jar&gt;<u></u><u></u></p></div><div><div><p class="MsoNormal">void resume() {<u></u><u></u></p></div><div><p class="MsoNormal">        com.badlogic.gdx.backends.android.AndroidGraphics $r0;<u></u><u></u></p></div><div><p class="MsoNormal">        java.lang.Object $r1;<u></u><u></u></p></div><div><p class="MsoNormal">        java.lang.Throwable $r2;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">        $r0 := @this: com.badlogic.gdx.backends.android.AndroidGraphics;<u></u><u></u></p></div><div><p class="MsoNormal">        $r1 = $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: java.lang.Object synch&gt;;<u></u><u></u></p></div><div><p class="MsoNormal">        entermonitor $r1;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">     label1:<u></u><u></u></p></div><div><p class="MsoNormal">        $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: boolean running&gt; = 1;<u></u><u></u></p></div><div><p class="MsoNormal">        $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: boolean resume&gt; = 1;<u></u><u></u></p></div><div><p class="MsoNormal">        exitmonitor $r1;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">     label2:<u></u><u></u></p></div><div><p class="MsoNormal">        return;<u></u><u></u></p></div><div><p class="MsoNormal">}<u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">&lt;INCORRECT Jimples when using full android.jar&gt;<u></u><u></u></p></div><div><div><p class="MsoNormal">void resume() {<u></u><u></u></p></div><div><p class="MsoNormal">        com.badlogic.gdx.backends.android.AndroidGraphics $r0;<u></u><u></u></p></div><div><p class="MsoNormal">        bottom_type $r1;<u></u><u></u></p></div><div><p class="MsoNormal">        java.lang.Object $r2;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">        $r0 := @this: com.badlogic.gdx.backends.android.AndroidGraphics;<u></u><u></u></p></div><div><p class="MsoNormal">        $r2 = $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: java.lang.Object synch&gt;;<u></u><u></u></p></div><div><p class="MsoNormal">        entermonitor $r2;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">        $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: boolean running&gt; = 1;<u></u><u></u></p></div><div><p class="MsoNormal">        $r0.&lt;com.badlogic.gdx.backends.android.AndroidGraphics: boolean resume&gt; = 1;<u></u><u></u></p></div><div><p class="MsoNormal">        exitmonitor $r2;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">        return;<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">        throw $r1;<u></u><u></u></p></div><div><p class="MsoNormal">}<u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">The problem is that I want to use the full android.jar. Do you know how to solve this problem? Thanks.<u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal">On Wed, Feb 25, 2015 at 9:32 PM, Xinxin Jin &lt;<a href="mailto:xinxin@cs.ucsd.edu" target="_blank">xinxin@cs.ucsd.edu</a>&gt; wrote:<u></u><u></u></p><div><div><p class="MsoNormal"><span style="font-family:&quot;Arial&quot;,&quot;sans-serif&quot;">What is your run command please ?<u></u><u></u></span></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p><div><div><div><p class="MsoNormal">On Wed, Feb 25, 2015 at 1:08 PM, Peter Kim &lt;<a href="mailto:chpkim@gmail.com" target="_blank">chpkim@gmail.com</a>&gt; wrote:<u></u><u></u></p></div></div><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm"><div><div><div><div><p class="MsoNormal">Hi,<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">When I run FlowDroid on an app (whose APK is here: <a href="https://drive.google.com/file/d/0B9KLXcAovVUHRVdaM0t1R01BaHM/view?usp=sharing" target="_blank">https://drive.google.com/file/d/0B9KLXcAovVUHRVdaM0t1R01BaHM/view?usp=sharing</a>), I get the following error. I&#39;m using recent version of Soot (February 25, 2015) and FlowDroid (February 23, 2015). This issue also seems to have been raised elsewhere (Issue #358 in Github, Sable/Soot, type of throw statement is bottom_type when it should be an actual type). Do you know how I can get around this problem? Thanks.<u></u><u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><div><p class="MsoNormal">Exception in thread &quot;main&quot; java.lang.IllegalStateException: UnitThrowAnalysis StmtSwitch: type of throw argument is not a RefType! It seems that the type of the processed throw statement is bottom_type instead of an actual type<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.exceptions.AbstractThrowAnalysis.mightThrowExplicitly(AbstractThrowAnalysis.java:65)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.exceptions.UnitThrowAnalysis$UnitSwitch.caseThrowStmt(UnitThrowAnalysis.java:706)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.internal.JThrowStmt.apply(JThrowStmt.java:70)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.exceptions.UnitThrowAnalysis.mightThrow(UnitThrowAnalysis.java:241)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.graph.ExceptionalUnitGraph.getExceptionDests(ExceptionalUnitGraph.java:800)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.graph.ExceptionalUnitGraph.buildHeadsAndTails(ExceptionalUnitGraph.java:763)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.graph.ExceptionalUnitGraph.initialize(ExceptionalUnitGraph.java:293)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.graph.ExceptionalUnitGraph.&lt;init&gt;(ExceptionalUnitGraph.java:159)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.toolkits.graph.ExceptionalUnitGraph.&lt;init&gt;(ExceptionalUnitGraph.java:193)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.toolkits.base.Aggregator.internalAggregate(Aggregator.java:103)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.toolkits.base.Aggregator.internalTransform(Aggregator.java:86)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.BodyTransformer.transform(BodyTransformer.java:51)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.BodyTransformer.transform(BodyTransformer.java:58)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.BodyTransformer.transform(BodyTransformer.java:63)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.dexpler.DexBody.jimplify(DexBody.java:628)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.dexpler.DexMethod$1.getBody(DexMethod.java:150)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.SootMethod.getBodyFromMethodSource(SootMethod.java:91)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.SootMethod.retrieveActiveBody(SootMethod.java:322)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processNewMethod(OnFlyCallGraphBuilder.java:529)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.toolkits.callgraph.OnFlyCallGraphBuilder.processReachables(OnFlyCallGraphBuilder.java:420)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.spark.solver.OnFlyCallGraph.build(OnFlyCallGraph.java:55)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.spark.solver.PropWorklist.handleVarNode(PropWorklist.java:122)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.spark.solver.PropWorklist.propagate(PropWorklist.java:52)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.spark.SparkTransformer.internalTransform(SparkTransformer.java:152)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.SceneTransformer.transform(SceneTransformer.java:39)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.Transform.apply(Transform.java:90)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.RadioScenePack.internalApply(RadioScenePack.java:57)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.toolkits.callgraph.CallGraphPack.internalApply(CallGraphPack.java:49)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.Pack.apply(Pack.java:116)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.infoflow.android.SetupApplication.calculateCallbackMethods(SetupApplication.java:352)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(SetupApplication.java:272)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.infoflow.android.SetupApplication.calculateSourcesSinksEntrypoints(SetupApplication.java:240)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.infoflow.android.TestApps.Test.runAnalysis(Test.java:505)<u></u><u></u></p></div><div><p class="MsoNormal">at soot.jimple.infoflow.android.TestApps.Test.main(Test.java:208)<u></u><u></u></p></div></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal"><u></u> <u></u></p></div></div><p class="MsoNormal"><u></u> <u></u></p></div></div><p class="MsoNormal" style="margin-bottom:12.0pt">_______________________________________________<br>Soot-list mailing list<br><a href="mailto:Soot-list@CS.McGill.CA" target="_blank">Soot-list@CS.McGill.CA</a><br><a href="https://mailman.CS.McGill.CA/mailman/listinfo/soot-list" target="_blank">https://mailman.CS.McGill.CA/mailman/listinfo/soot-list</a><u></u><u></u></p></blockquote></div><p class="MsoNormal"><span style="color:#888888"><br><br clear="all"><span><u></u><u></u></span></span></p><div><p class="MsoNormal"><u></u> <u></u></p></div><p class="MsoNormal"><span><span style="color:#888888">-- </span><u></u><u></u></span></p><div><div><p class="MsoNormal"><span style="font-family:&quot;Georgia&quot;,&quot;serif&quot;;color:#888888">Xinxin Jin </span><u></u><u></u></p><div><div><p class="MsoNormal"><span style="font-family:&quot;Georgia&quot;,&quot;serif&quot;;color:#888888">Ph.D. student, Computer Science</span><span style="color:#888888"><u></u><u></u></span></p><div><p class="MsoNormal"><span style="font-family:&quot;Georgia&quot;,&quot;serif&quot;;color:#888888">University of California, San Diego</span><span style="color:#888888"><u></u><u></u></span></p></div><div><p class="MsoNormal"><span style="font-family:&quot;Georgia&quot;,&quot;serif&quot;;color:#888888"><a href="http://cseweb.ucsd.edu/~x7jin/" target="_blank">http://cseweb.ucsd.edu/~x7jin/</a></span><span style="color:#888888"><u></u><u></u></span></p></div><div><p class="MsoNormal"><span style="color:#888888"><u></u> <u></u></span></p></div></div></div></div></div></div></div><p class="MsoNormal"><u></u> <u></u></p></div></div></div></div></div></blockquote></div><br></div>