<div dir="ltr"><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Hi there,</div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">I got a weird problem: Sometimes Body.getUnits() does not list all the units of a method. The following is one example: </div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Simplified code snippet: </div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex" class="gmail_quote"><font color="#666666"><font face="monospace, monospace">void foo() {<br></font><font face="monospace, monospace"> ...<br></font><font face="monospace, monospace"> BasicHttpClient basicClient = new BasicHttpClient();<br></font><font face="monospace, monospace"> ...<br></font><font face="monospace, monospace">}</font></font></blockquote><div><br></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">And in the Jimple file, there are two statements related with "new BasicHttpClient()" :</div><div class="gmail_default" style><font face="arial, helvetica, sans-serif"><br></font></div></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex" class="gmail_quote"><font color="#666666"><span style="font-family:monospace,monospace">$r5 = new com.turbomanage.httpclient.BasicHttpClient;<br></span><font face="monospace, monospace">specialinvoke $r5.<com.turbomanage.httpclient.BasicHttpClient: void <init>()>(); </font></font></blockquote><div><br></div><div><div class="gmail_default"><span style="font-family:arial,helvetica,sans-serif">However, when I use </span><font face="monospace, monospace">retriveActiveBody().getUnits()</font><font face="arial, helvetica, sans-serif"> to print out all the units of foo(), I can only see one statement: </font></div><blockquote style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex" class="gmail_quote"><font face="monospace, monospace" color="#666666">specialinvoke $r5.<com.turbomanage.httpclient.BasicHttpClient: void <init>()>()</font></blockquote><div class="gmail_default" style="font-family:arial,helvetica,sans-serif"><br></div><div class="gmail_default"><span style="font-family:arial,helvetica,sans-serif">I don't know why getUnits() cannot obtain "</span><font face="monospace, monospace">$r5 = new com.turbomanage.httpclient.BasicHttpClient</font><font face="arial, helvetica, sans-serif">" ?</font></div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">What kind of units are ignored by Soot ?</div><br></div><div><div class="gmail_default" style="font-family:arial,helvetica,sans-serif">Thanks a lot for any advices !</div><br></div><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><font face="arial, helvetica, sans-serif">Xinxin</font></div>
</div>