[Soot-list] Potential bug fix for ThreadLocalObjectsAnalysis
khilan at doc.ic.ac.uk
Tue Mar 15 04:03:01 EDT 2011
I think I have a potential bug fix for
It seems that the bug is due to an assumption that if an object is
thread-local then all it's fields are also thread-local. This manifests
itself in ClassLocalObjectsAnalysis.java with the call to
setAllFieldsLocal() in the block:
else if( SmartMethodLocalObjectsAnalysis.isObjectLocal(dfa,
containingMethod, containingContext, iie.getBase()) )
// calling a method on a local object
However, Arie's test-case breaks this assumption because although publish is
thread-local, publish.d isn't. Hence, I commented out the call to
setAllFieldsLocal() and it is now giving the correct result, that publish is
thread-local and publish.d is thread-shared.
Please let me know if this is correct.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Soot-list