am 42786418
: Don\'t instantiate non-Fragments in Fragment.instantiate
* commit '427864188dfc5dd803b15797379b9dc6673abd16': Don't instantiate non-Fragments in Fragment.instantiate
This commit is contained in:
@ -572,6 +572,10 @@ public class Fragment implements ComponentCallbacks2, OnCreateContextMenuListene
|
|||||||
if (clazz == null) {
|
if (clazz == null) {
|
||||||
// Class not found in the cache, see if it's real, and try to add it
|
// Class not found in the cache, see if it's real, and try to add it
|
||||||
clazz = context.getClassLoader().loadClass(fname);
|
clazz = context.getClassLoader().loadClass(fname);
|
||||||
|
if (!Fragment.class.isAssignableFrom(clazz)) {
|
||||||
|
throw new InstantiationException("Trying to instantiate a class " + fname
|
||||||
|
+ " that is not a Fragment", new ClassCastException());
|
||||||
|
}
|
||||||
sClassMap.put(fname, clazz);
|
sClassMap.put(fname, clazz);
|
||||||
}
|
}
|
||||||
Fragment f = (Fragment)clazz.newInstance();
|
Fragment f = (Fragment)clazz.newInstance();
|
||||||
|
Reference in New Issue
Block a user