diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/object.h | 2 | ||||
| -rw-r--r-- | src/thread.cc | 2 |
2 files changed, 2 insertions, 2 deletions
diff --git a/src/object.h b/src/object.h index c1e46671e9..eeac3ea0f1 100644 --- a/src/object.h +++ b/src/object.h @@ -884,7 +884,7 @@ class MANAGED Method : public Object { } // Is this a CalleSaveMethod or ResolutionMethod and therefore doesn't adhere to normal - // conventions for a method of managed code. + // conventions for a method of managed code. Returns false for Proxy methods. bool IsRuntimeMethod() const { return GetDexMethodIndex() == DexFile::kDexNoIndex16; } diff --git a/src/thread.cc b/src/thread.cc index 76dfa18b5f..e682487519 100644 --- a/src/thread.cc +++ b/src/thread.cc @@ -1642,7 +1642,7 @@ class ReferenceMapVisitor : public StackVisitor { } else { Method* m = GetMethod(); // Process register map (which native and runtime methods don't have) - if (!m->IsNative() && !m->IsRuntimeMethod()) { + if (!m->IsNative() && !m->IsRuntimeMethod() && !m->IsProxyMethod()) { const uint8_t* gc_map = m->GetGcMap(); CHECK(gc_map != NULL) << PrettyMethod(m); uint32_t gc_map_length = m->GetGcMapLength(); |