diff options
author | Amith Yamasani <yamasani@google.com> | 2013-09-27 11:51:09 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-09-27 11:51:09 -0700 |
commit | 490399292d2160cf94231df7a9e07e8aa8237489 (patch) | |
tree | 47976e8d4ea02a568eb1092401612fa945a5173d /core/java | |
parent | c6d085a5179311ba3d7395360e6e427fa4fb076c (diff) | |
parent | 49eb1d958198b2a88455c340c9d072469d065785 (diff) | |
download | frameworks_base-490399292d2160cf94231df7a9e07e8aa8237489.zip frameworks_base-490399292d2160cf94231df7a9e07e8aa8237489.tar.gz frameworks_base-490399292d2160cf94231df7a9e07e8aa8237489.tar.bz2 |
am 49eb1d95: am d084cc44: am 4f59a921: am 12fd0f16: am f6a0c116: am 9bf1a139: am 72c5e376: am ba1ae3af: am 42786418: Don\'t instantiate non-Fragments in Fragment.instantiate
* commit '49eb1d958198b2a88455c340c9d072469d065785':
Don't instantiate non-Fragments in Fragment.instantiate
Diffstat (limited to 'core/java')
-rw-r--r-- | core/java/android/app/Fragment.java | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/core/java/android/app/Fragment.java b/core/java/android/app/Fragment.java index b6aeb84..422d0bc 100644 --- a/core/java/android/app/Fragment.java +++ b/core/java/android/app/Fragment.java @@ -580,6 +580,10 @@ public class Fragment implements ComponentCallbacks2, OnCreateContextMenuListene if (clazz == null) { // Class not found in the cache, see if it's real, and try to add it 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); } Fragment f = (Fragment)clazz.newInstance(); |