Merge "Use Class.forName instead of ClassLoader.loadClass."
am: dc489aba0e
Change-Id: I80f1488c7cca5ce68555786a7951f30172c905f2
This commit is contained in:
@@ -512,7 +512,7 @@ public abstract class LayoutInflater {
|
||||
String layout = res.getResourceEntryName(resource);
|
||||
|
||||
try {
|
||||
Class clazz = mPrecompiledClassLoader.loadClass("" + pkg + ".CompiledView");
|
||||
Class clazz = Class.forName("" + pkg + ".CompiledView", false, mPrecompiledClassLoader);
|
||||
Method inflater = clazz.getMethod(layout, Context.class, int.class);
|
||||
View view = (View) inflater.invoke(null, mContext, resource);
|
||||
|
||||
@@ -731,8 +731,8 @@ public abstract class LayoutInflater {
|
||||
|
||||
if (constructor == null) {
|
||||
// Class not found in the cache, see if it's real, and try to add it
|
||||
clazz = mContext.getClassLoader().loadClass(
|
||||
prefix != null ? (prefix + name) : name).asSubclass(View.class);
|
||||
clazz = Class.forName(prefix != null ? (prefix + name) : name, false,
|
||||
mContext.getClassLoader()).asSubclass(View.class);
|
||||
|
||||
if (mFilter != null && clazz != null) {
|
||||
boolean allowed = mFilter.onLoadClass(clazz);
|
||||
@@ -750,8 +750,8 @@ public abstract class LayoutInflater {
|
||||
Boolean allowedState = mFilterMap.get(name);
|
||||
if (allowedState == null) {
|
||||
// New class -- remember whether it is allowed
|
||||
clazz = mContext.getClassLoader().loadClass(
|
||||
prefix != null ? (prefix + name) : name).asSubclass(View.class);
|
||||
clazz = Class.forName(prefix != null ? (prefix + name) : name, false,
|
||||
mContext.getClassLoader()).asSubclass(View.class);
|
||||
|
||||
boolean allowed = clazz != null && mFilter.onLoadClass(clazz);
|
||||
mFilterMap.put(name, allowed);
|
||||
|
||||
Reference in New Issue
Block a user