OSDN Git Service

ProfilingInfo roots should be visited by the declaring class.
authorNicolas Geoffray <ngeoffray@google.com>
Thu, 3 Mar 2016 23:14:49 +0000 (23:14 +0000)
committerNicolas Geoffray <ngeoffray@google.com>
Thu, 3 Mar 2016 23:19:10 +0000 (23:19 +0000)
commit9a3be989d0aee1a6998e33813c7f70906d27f89a
tree7609cc5f7604816dede6dedad17b192ddc3355b5
parent3d4770c4577107caab23ba40547124c993e21c38
ProfilingInfo roots should be visited by the declaring class.

There seems to be an implicit assumption that only classes can
visit native roots (ie kVisitNativeRoots in Class::VisitReferences).
However, some places like Dbg::VisitRoots and
AllocRecordObjectMap::VisitRoots visit ArtMethod::VisitRoot
directly, and that breaks the assumptions.

bug:27435111
Change-Id: I5b476e614ba820394635d946cb562bf872a50e7e
runtime/art_method-inl.h
runtime/mirror/class-inl.h